モジュール java.base
パッケージ java.util.concurrent

インタフェースBlockingDeque<E>

    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 抽象メソッド 
      修飾子と型 メソッド 説明
      boolean add​(E e)
      指定された要素を、この両端キューで表されるキュー(つまり、この両端キューの末尾)に、容量制限に違反することなしにすぐに挿入できる場合には、そうします。成功した場合はtrueを返し、使用可能な空き領域がその時点で存在しない場合はIllegalStateExceptionをスローします。
      void addFirst​(E e)
      容量制限に違反することなく指定された要素をこの両端キューの先頭にすぐに挿入できる場合には、そうします。使用可能な空き領域がその時点で存在しない場合はIllegalStateExceptionをスローします。
      void addLast​(E e)
      容量制限に違反することなく指定された要素をこの両端キューの末尾にすぐに挿入できる場合には、そうします。使用可能な空き領域がその時点で存在しない場合はIllegalStateExceptionをスローします。
      boolean contains​(Object o)
      指定された要素がこの両端キューに含まれている場合にtrueを返します。
      E element()
      この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得しますが、削除しません。
      Iterator<E> iterator()
      この両端キュー内の要素を適切な順序で反復処理するイテレータを返します。
      boolean offer​(E e)
      指定された要素を、この両端キューで表されるキュー(つまり、この両端キューの末尾)に、容量制限に違反することなしにすぐに挿入できる場合には、そうします。成功した場合はtrueを返し、使用可能な空き領域がその時点で存在しない場合はfalseを返します。
      boolean offer​(E e, long timeout, TimeUnit unit)
      指定された要素をこの両端キューで表されるキュー(つまり、この両端キューの末尾)に挿入します。必要に応じて、指定された待機時間まで空きが生じるのを待機します。
      boolean offerFirst​(E e)
      容量制限に違反することなしに指定された要素をこの両端キューの先頭にすぐに挿入できる場合には、そうします。成功した場合はtrueを返し、使用可能な空き領域がその時点で存在しない場合はfalseを返します。
      boolean offerFirst​(E e, long timeout, TimeUnit unit)
      指定された要素をこの両端キューの先頭に挿入します。必要に応じて、指定された待機時間まで空きが生じるのを待機します。
      boolean offerLast​(E e)
      容量制限に違反することなしに指定された要素をこの両端キューの末尾にすぐに挿入できる場合には、そうします。成功した場合はtrueを返し、使用可能な空き領域がその時点で存在しない場合はfalseを返します。
      boolean offerLast​(E e, long timeout, TimeUnit unit)
      指定された要素をこの両端キューの末尾に挿入します。必要に応じて、指定された待機時間まで空きが生じるのを待機します。
      E peek()
      この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得しますが、削除しません。両端キューが空の場合は、nullを返します。
      E poll()
      この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得および削除します。両端キューが空の場合は、nullを返します。
      E poll​(long timeout, TimeUnit unit)
      この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得して削除します。必要に応じて、指定された待機時間まで要素が利用可能になるのを待機します。
      E pollFirst​(long timeout, TimeUnit unit)
      この両端キューの最初の要素を取得して削除します。必要に応じて、指定された待機時間まで要素が利用可能になるのを待機します。
      E pollLast​(long timeout, TimeUnit unit)
      この両端キューの最後の要素を取得して削除します。必要に応じて、指定された待機時間まで要素が利用可能になるのを待機します。
      void push​(E e)
      容量制限に違反することなしに要素をこの両端キューで表されるスタック(つまり、この両端キューの先頭)にすぐにプッシュできる場合は、そうします。使用可能な空き領域がその時点で存在しない場合はIllegalStateExceptionをスローします。
      void put​(E e)
      指定された要素をこの両端キューで表されるキュー(つまり、この両端キューの末尾)に挿入します。必要に応じて、空きが生じるまで待機します。
      void putFirst​(E e)
      指定された要素をこの両端キューの先頭に挿入します。必要に応じて、空きが生じるまで待機します。
      void putLast​(E e)
      指定された要素をこの両端キューの末尾に挿入します。必要に応じて、空きが生じるまで待機します。
      E remove()
      この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得して削除します。
      boolean remove​(Object o)
      指定された要素のうち最初に出現したものを、この両端キューから削除します。
      boolean removeFirstOccurrence​(Object o)
      指定された要素のうち最初に出現したものを、この両端キューから削除します。
      boolean removeLastOccurrence​(Object o)
      指定された要素のうち最後に出現したものを、この両端キューから削除します。
      int size()
      この両端キュー内の要素の数を返します。
      E take()
      この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得して削除します。必要に応じて、要素が利用可能になるまで待機します。
      E takeFirst()
      この両端キューの最初の要素を取得して削除します。必要に応じて、要素が利用可能になるまで待機します。
      E takeLast()
      この両端キューの最後の要素を取得して削除します。必要に応じて、要素が利用可能になるまで待機します。
      • インタフェース java.lang.Iterableで宣言されたメソッド

        forEach
    • メソッドの詳細

      • addFirst

        void addFirst​(E e)
        容量制限に違反することなく指定された要素をこの両端キューの先頭にすぐに挿入できる場合には、そうします。使用可能な空き領域がその時点で存在しない場合はIllegalStateExceptionをスローします。 容量制限のある両端キューを使用する場合、通常はofferFirstメソッドを使用することをお薦めします。
        定義:
        addFirst、インタフェースDeque<E>
        パラメータ:
        e - 追加する要素
        例外:
        IllegalStateException - 容量制限のために、この時点で要素を追加できない場合
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
      • addLast

        void addLast​(E e)
        容量制限に違反することなく指定された要素をこの両端キューの末尾にすぐに挿入できる場合には、そうします。使用可能な空き領域がその時点で存在しない場合はIllegalStateExceptionをスローします。 容量制限のある両端キューを使用する場合、通常はofferLastメソッドを使用することをお薦めします。
        定義:
        addLast、インタフェースDeque<E>
        パラメータ:
        e - 追加する要素
        例外:
        IllegalStateException - 容量制限のために、この時点で要素を追加できない場合
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
      • offerFirst

        boolean offerFirst​(E e)
        容量制限に違反することなしに指定された要素をこの両端キューの先頭にすぐに挿入できる場合には、そうします。成功した場合はtrueを返し、使用可能な空き領域がその時点で存在しない場合はfalseを返します。 容量制限のある両端キューを使用する場合、通常は、要素の挿入に失敗した場合に例外をスローするのみのaddFirstメソッドよりもこのメソッドを使用することをお薦めします。
        定義:
        offerFirst、インタフェースDeque<E>
        パラメータ:
        e - 追加する要素
        戻り値:
        要素がこの両端キューに追加された場合はtrue、それ以外の場合はfalse
        例外:
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
      • offerLast

        boolean offerLast​(E e)
        容量制限に違反することなしに指定された要素をこの両端キューの末尾にすぐに挿入できる場合には、そうします。成功した場合はtrueを返し、使用可能な空き領域がその時点で存在しない場合はfalseを返します。 容量制限のある両端キューを使用する場合、通常は、要素の挿入に失敗した場合に例外をスローするのみのaddLastメソッドよりもこのメソッドを使用することをお薦めします。
        定義:
        offerLast、インタフェースDeque<E>
        パラメータ:
        e - 追加する要素
        戻り値:
        要素がこの両端キューに追加された場合はtrue、それ以外の場合はfalse
        例外:
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
      • putFirst

        void putFirst​(E e)
               throws InterruptedException
        指定された要素をこの両端キューの先頭に挿入します。必要に応じて、空きが生じるまで待機します。
        パラメータ:
        e - 追加する要素
        例外:
        InterruptedException - 待機中に割込みが発生した場合
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
      • putLast

        void putLast​(E e)
              throws InterruptedException
        指定された要素をこの両端キューの末尾に挿入します。必要に応じて、空きが生じるまで待機します。
        パラメータ:
        e - 追加する要素
        例外:
        InterruptedException - 待機中に割込みが発生した場合
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
      • offerFirst

        boolean offerFirst​(E e,
                           long timeout,
                           TimeUnit unit)
                    throws InterruptedException
        指定された要素をこの両端キューの先頭に挿入します。必要に応じて、指定された待機時間まで空きが生じるのを待機します。
        パラメータ:
        e - 追加する要素
        timeout - 処理を中止するまでの待機時間。単位はunit
        unit - timeoutパラメータの解釈方法を決定するTimeUnit
        戻り値:
        成功した場合はtrue、空きが生じる前に指定された待機時間が経過した場合はfalse
        例外:
        InterruptedException - 待機中に割込みが発生した場合
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
      • offerLast

        boolean offerLast​(E e,
                          long timeout,
                          TimeUnit unit)
                   throws InterruptedException
        指定された要素をこの両端キューの末尾に挿入します。必要に応じて、指定された待機時間まで空きが生じるのを待機します。
        パラメータ:
        e - 追加する要素
        timeout - 処理を中止するまでの待機時間。単位はunit
        unit - timeoutパラメータの解釈方法を決定するTimeUnit
        戻り値:
        成功した場合はtrue、空きが生じる前に指定された待機時間が経過した場合はfalse
        例外:
        InterruptedException - 待機中に割込みが発生した場合
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
      • takeFirst

        E takeFirst()
             throws InterruptedException
        この両端キューの最初の要素を取得して削除します。必要に応じて、要素が利用可能になるまで待機します。
        戻り値:
        この両端キューの先頭
        例外:
        InterruptedException - 待機中に割込みが発生した場合
      • takeLast

        E takeLast()
            throws InterruptedException
        この両端キューの最後の要素を取得して削除します。必要に応じて、要素が利用可能になるまで待機します。
        戻り値:
        この両端キューの末尾
        例外:
        InterruptedException - 待機中に割込みが発生した場合
      • pollFirst

        E pollFirst​(long timeout,
                    TimeUnit unit)
             throws InterruptedException
        この両端キューの最初の要素を取得して削除します。必要に応じて、指定された待機時間まで要素が利用可能になるのを待機します。
        パラメータ:
        timeout - 処理を中止するまでの待機時間。単位はunit
        unit - timeoutパラメータの解釈方法を決定するTimeUnit
        戻り値:
        この両端キューの先頭。空きが生じる前に指定された待機時間が経過した場合はnull
        例外:
        InterruptedException - 待機中に割込みが発生した場合
      • pollLast

        E pollLast​(long timeout,
                   TimeUnit unit)
            throws InterruptedException
        この両端キューの最後の要素を取得して削除します。必要に応じて、指定された待機時間まで要素が利用可能になるのを待機します。
        パラメータ:
        timeout - 処理を中止するまでの待機時間。単位はunit
        unit - timeoutパラメータの解釈方法を決定するTimeUnit
        戻り値:
        この両端キューの末尾。空きが生じる前に指定された待機時間が経過した場合はnull
        例外:
        InterruptedException - 待機中に割込みが発生した場合
      • removeFirstOccurrence

        boolean removeFirstOccurrence​(Object o)
        指定された要素のうち最初に出現したものを、この両端キューから削除します。 その要素が両端キューにない場合、変更はありません。 つまり、o.equals(e)となる最初の要素eが存在する場合は、その要素を削除します。 指定された要素がこの両端キューに含まれていた場合(すなわち、呼出しの結果としてこの両端キューが変更された場合)はtrueを返します。
        定義:
        removeFirstOccurrence、インタフェースDeque<E>
        パラメータ:
        o - この両端キューから削除される要素(その要素が存在する場合)
        戻り値:
        この呼出しの結果として要素が削除された場合はtrue
        例外:
        ClassCastException - 指定された要素のクラスが、この両端キューと互換でない場合(オプション)
        NullPointerException - 指定された要素がnullの場合(オプション)
      • removeLastOccurrence

        boolean removeLastOccurrence​(Object o)
        指定された要素のうち最後に出現したものを、この両端キューから削除します。 その要素が両端キューにない場合、変更はありません。 つまり、o.equals(e)となる最後の要素eが存在する場合は、その要素を削除します。 指定された要素がこの両端キューに含まれていた場合(すなわち、呼出しの結果としてこの両端キューが変更された場合)はtrueを返します。
        定義:
        removeLastOccurrence、インタフェースDeque<E>
        パラメータ:
        o - この両端キューから削除される要素(その要素が存在する場合)
        戻り値:
        この呼出しの結果として要素が削除された場合はtrue
        例外:
        ClassCastException - 指定された要素のクラスが、この両端キューと互換でない場合(オプション)
        NullPointerException - 指定された要素がnullの場合(オプション)
      • add

        boolean add​(E e)
        指定された要素を、この両端キューで表されるキュー(つまり、この両端キューの末尾)に、容量制限に違反することなしにすぐに挿入できる場合には、そうします。成功した場合はtrueを返し、使用可能な空き領域がその時点で存在しない場合はIllegalStateExceptionをスローします。 容量制限のある両端キューを使用する場合、通常はofferを使用することをお薦めします。

        このメソッドは、addLastと同等です。

        定義:
        add、インタフェースBlockingQueue<E>
        定義:
        add、インタフェースCollection<E>
        定義:
        add、インタフェースDeque<E>
        定義:
        add、インタフェースQueue<E>
        パラメータ:
        e - 追加する要素
        戻り値:
        true (Collection.add(E)で指定されているとおり)
        例外:
        IllegalStateException - 容量制限のために、この時点で要素を追加できない場合
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
      • offer

        boolean offer​(E e)
        指定された要素を、この両端キューで表されるキュー(つまり、この両端キューの末尾)に、容量制限に違反することなしにすぐに挿入できる場合には、そうします。成功した場合はtrueを返し、使用可能な空き領域がその時点で存在しない場合はfalseを返します。 容量制限のある両端キューを使用する場合、通常は、要素の挿入に失敗した場合に例外をスローするのみのadd(E)メソッドよりもこのメソッドを使用することをお薦めします。

        このメソッドは、offerLastと同等です。

        定義:
        offer、インタフェースBlockingQueue<E>
        定義:
        offer、インタフェースDeque<E>
        定義:
        offer、インタフェースQueue<E>
        パラメータ:
        e - 追加する要素
        戻り値:
        このキューに要素が追加された場合はtrue、それ以外の場合はfalse
        例外:
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
      • put

        void put​(E e)
          throws InterruptedException
        指定された要素をこの両端キューで表されるキュー(つまり、この両端キューの末尾)に挿入します。必要に応じて、空きが生じるまで待機します。

        このメソッドは、putLastと同等です。

        定義:
        put、インタフェースBlockingQueue<E>
        パラメータ:
        e - 追加する要素
        例外:
        InterruptedException - 待機中に割込みが発生した場合
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
      • offer

        boolean offer​(E e,
                      long timeout,
                      TimeUnit unit)
               throws InterruptedException
        指定された要素をこの両端キューで表されるキュー(つまり、この両端キューの末尾)に挿入します。必要に応じて、指定された待機時間まで空きが生じるのを待機します。

        このメソッドは、offerLastと同等です。

        定義:
        offer、インタフェースBlockingQueue<E>
        パラメータ:
        e - 追加する要素
        timeout - 処理を中止するまでの待機時間。単位はunit
        unit - timeoutパラメータの解釈方法を決定するTimeUnit
        戻り値:
        要素がこの両端キューに追加された場合はtrue、それ以外の場合はfalse
        例外:
        InterruptedException - 待機中に割込みが発生した場合
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
      • remove

        E remove()
        この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得して削除します。 このメソッドは、両端キューが空の場合に例外をスローする点のみがpoll()メソッドと異なります。

        このメソッドは、removeFirstと同等です。

        定義:
        remove、インタフェースDeque<E>
        定義:
        remove、インタフェースQueue<E>
        戻り値:
        この両端キューで表されるキューの先頭
        例外:
        NoSuchElementException - この両端キューが空の場合
      • poll

        E poll()
        この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得および削除します。両端キューが空の場合は、nullを返します。

        このメソッドは、Deque.pollFirst()と同等です。

        定義:
        poll、インタフェースDeque<E>
        定義:
        poll、インタフェースQueue<E>
        戻り値:
        この両端キューの先頭。この両端キューが空の場合はnull
      • take

        E take()
        throws InterruptedException
        この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得して削除します。必要に応じて、要素が利用可能になるまで待機します。

        このメソッドは、takeFirstと同等です。

        定義:
        take、インタフェースBlockingQueue<E>
        戻り値:
        この両端キューの先頭
        例外:
        InterruptedException - 待機中に割込みが発生した場合
      • poll

        E poll​(long timeout,
               TimeUnit unit)
        throws InterruptedException
        この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得して削除します。必要に応じて、指定された待機時間まで要素が利用可能になるのを待機します。

        このメソッドは、pollFirstと同等です。

        定義:
        poll、インタフェースBlockingQueue<E>
        パラメータ:
        timeout - 処理を中止するまでの待機時間。単位はunit
        unit - timeoutパラメータの解釈方法を決定するTimeUnit
        戻り値:
        この両端キューの先頭。空きが生じる前に指定された待機時間が経過した場合はnull
        例外:
        InterruptedException - 待機中に割込みが発生した場合
      • element

        E element()
        この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得しますが、削除しません。 このメソッドは、両端キューが空の場合に例外をスローする点のみがpeekメソッドと異なります。

        このメソッドは、getFirstと同等です。

        定義:
        element、インタフェースDeque<E>
        定義:
        element、インタフェースQueue<E>
        戻り値:
        この両端キューの先頭
        例外:
        NoSuchElementException - この両端キューが空の場合
      • peek

        E peek()
        この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得しますが、削除しません。両端キューが空の場合は、nullを返します。

        このメソッドは、peekFirstと同等です。

        定義:
        peek、インタフェースDeque<E>
        定義:
        peek、インタフェースQueue<E>
        戻り値:
        この両端キューの先頭。この両端キューが空の場合はnull
      • remove

        boolean remove​(Object o)
        指定された要素のうち最初に出現したものを、この両端キューから削除します。 その要素が両端キューにない場合、変更はありません。 つまり、o.equals(e)となる最初の要素eが存在する場合は、その要素を削除します。 指定された要素がこの両端キューに含まれていた場合(すなわち、呼出しの結果としてこの両端キューが変更された場合)はtrueを返します。

        このメソッドは、removeFirstOccurrenceと同等です。

        定義:
        remove、インタフェースBlockingQueue<E>
        定義:
        remove、インタフェースCollection<E>
        定義:
        remove、インタフェースDeque<E>
        パラメータ:
        o - この両端キューから削除される要素(その要素が存在する場合)
        戻り値:
        この呼出しの結果、この両端キューが変更された場合はtrue
        例外:
        ClassCastException - 指定された要素のクラスが、この両端キューと互換でない場合(オプション)
        NullPointerException - 指定された要素がnullの場合(オプション)
      • contains

        boolean contains​(Object o)
        指定された要素がこの両端キューに含まれている場合にtrueを返します。 つまり、この両端キューに、o.equals(e)となる要素eが1つ以上含まれている場合にだけtrueを返します。
        定義:
        contains、インタフェースBlockingQueue<E>
        定義:
        contains、インタフェースCollection<E>
        定義:
        contains、インタフェースDeque<E>
        パラメータ:
        o - この両端キューに含まれているかどうかを調べるオブジェクト
        戻り値:
        指定された要素がこの両端キューに含まれている場合はtrue
        例外:
        ClassCastException - 指定された要素のクラスが、この両端キューと互換でない場合(オプション)
        NullPointerException - 指定された要素がnullの場合(オプション)
      • size

        int size()
        この両端キュー内の要素の数を返します。
        定義:
        size、インタフェースCollection<E>
        定義:
        size、インタフェースDeque<E>
        戻り値:
        この両端キュー内の要素の数
      • iterator

        Iterator<E> iterator()
        この両端キュー内の要素を適切な順序で反復処理するイテレータを返します。 要素は最初(先頭)から最後(末尾)の順に返されます。
        定義:
        iterator、インタフェースCollection<E>
        定義:
        iterator、インタフェースDeque<E>
        定義:
        iterator、インタフェースIterable<E>
        戻り値:
        この両端キュー内の要素を適切な順序で繰返し処理するイテレータ
      • push

        void push​(E e)
        容量制限に違反することなしに要素をこの両端キューで表されるスタック(つまり、この両端キューの先頭)にすぐにプッシュできる場合は、そうします。使用可能な空き領域がその時点で存在しない場合はIllegalStateExceptionをスローします。

        このメソッドは、addFirstと同等です。

        定義:
        push、インタフェースDeque<E>
        パラメータ:
        e - プッシュする要素
        例外:
        IllegalStateException - 容量制限のために、この時点で要素を追加できない場合
        ClassCastException - 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合
        NullPointerException - 指定された要素がnullである場合
        IllegalArgumentException - 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合