- 型パラメータ:
E
- この両端キューに保持されている要素の型
- すべてのスーパー・インタフェース:
BlockingQueue<E>
,Collection<E>
,Deque<E>
,Iterable<E>
,Queue<E>
- 既知のすべての実装クラス:
LinkedBlockingDeque
public interface BlockingDeque<E> extends BlockingQueue<E>, Deque<E>
Deque
です。
BlockingDeque
メソッドには4つの形式があり、すぐには達成できなくても将来のある時点で達成できる可能性がある操作を異なる方法で処理します。1つめは例外をスローし、2つめは特殊な値(操作に応じてnull
とfalse
のいずれか)を返し、3つめは操作が正常に完了するまで現在のスレッドを無期限にブロックし、4つめは処理を中止するまで指定された制限時間内のみブロックします。 これらのメソッドについて、次の表にまとめます。
最初の要素(先頭) | ||||
---|---|---|---|---|
例外のスロー | 特殊な値 | ブロック | タイム・アウト | |
挿入 | addFirst(e) |
offerFirst(e) |
putFirst(e) |
offerFirst(e, time, unit) |
削除 | removeFirst() |
pollFirst() |
takeFirst() |
pollFirst(time, unit) |
調査 | getFirst() |
peekFirst() |
適用外 | 適用外 |
最後の要素(末尾) | ||||
例外のスロー | 特殊な値 | ブロック | タイム・アウト | |
挿入 | addLast(e) |
offerLast(e) |
putLast(e) |
offerLast(e, time, unit) |
削除 | removeLast() |
pollLast() |
takeLast() |
pollLast(time, unit) |
調査 | getLast() |
peekLast() |
適用外 | 適用外 |
BlockingQueue
と同様、BlockingDeque
はスレッド・セーフであり、null要素を許可しません。また、容量制約を受ける場合と受けない場合があります。
BlockingDeque
実装は、FIFOのBlockingQueue
として直接使用されることがあります。 BlockingQueue
インタフェースから継承されたメソッドは、次の表に示すようにBlockingDeque
メソッドと完全に同等です。
BlockingQueue メソッド |
同等のBlockingDeque メソッド |
|
---|---|---|
挿入 | add(e) |
addLast(e) |
offer(e) |
offerLast(e) |
|
put(e) |
putLast(e) |
|
offer(e, time, unit) |
offerLast(e, time, unit) |
|
削除 | remove() |
removeFirst() |
poll() |
pollFirst() |
|
take() |
takeFirst() |
|
poll(time, unit) |
pollFirst(time, unit) |
|
調査 | element() |
getFirst() |
peek() |
peekFirst() |
メモリー整合性効果: ほかの並行処理コレクションと同様、オブジェクトをBlockingDeque
に配置する前のスレッド内のアクションは、別のスレッドでのその要素へのアクセスまたはBlockingDeque
からの削除に続くアクションよりも前に発生します。
このインタフェースは、Java Collections Frameworkのメンバーです。
- 導入されたバージョン:
- 1.6
-
メソッドのサマリー
修飾子と型 メソッド 説明 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.util.Collectionで宣言されたメソッド
clear, containsAll, equals, hashCode, isEmpty, parallelStream, removeAll, removeIf, retainAll, spliterator, stream, toArray, toArray, toArray
インタフェース java.util.Dequeで宣言されたメソッド
addAll, descendingIterator, getFirst, getLast, peekFirst, peekLast, pollFirst, pollLast, pop, removeFirst, removeLast
-
メソッドの詳細
-
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
と同等です。 -
poll
E poll()この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得および削除します。両端キューが空の場合は、null
を返します。このメソッドは、
Deque.pollFirst()
と同等です。 -
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
E peek()この両端キューによって表されるキューの先頭(つまり、この両端キューの最初の要素)を取得しますが、削除しません。両端キューが空の場合は、null
を返します。このメソッドは、
peekFirst
と同等です。 -
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()この両端キュー内の要素の数を返します。 -
iterator
この両端キュー内の要素を適切な順序で反復処理するイテレータを返します。 要素は最初(先頭)から最後(末尾)の順に返されます。 -
push
void push(E e)容量制限に違反することなしに要素をこの両端キューで表されるスタック(つまり、この両端キューの先頭)にすぐにプッシュできる場合は、そうします。使用可能な空き領域がその時点で存在しない場合はIllegalStateException
をスローします。このメソッドは、
addFirst
と同等です。- 定義:
push
、インタフェース:Deque<E>
- パラメータ:
e
- プッシュする要素- 例外:
IllegalStateException
- 容量制限のために、この時点で要素を追加できない場合ClassCastException
- 指定された要素のクラスが原因で、この両端キューにその要素を追加できない場合NullPointerException
- 指定された要素がnullである場合IllegalArgumentException
- 指定された要素のあるプロパティが原因で、この両端キューにその要素を追加できない場合
-