Queue インタフェース

Since: Aug./07th/2005

Queue インタフェース

インタフェース java.util.Queue は、J2SE 5.0 で追加されました。Collection を直接継承し、Set, List と並んで、コレクション・フレームワークの基底となるインタフェースです。

実装クラスが表すキューは、FIFO (先入れ先出しの待ち行列)か LIFO (後入れ先出しのスタック)を表すことが多いでしょう。概念的には、特殊な List に似ています。

Collection とは独自に宣言するメソッドは次のメソッドです。

public Object element()
          キューの先頭を取得しますが、削除しません。
public boolean offer(Object element)
          可能な場合、指定された要素をこのキューに挿入します。
public Object peek()
          キューの先頭を取得しますが、削除しません。
public Object poll()
          キューの先頭を取得および削除します。
public Object remove()
          キューの先頭を取得および削除します。

ちょっとだけですね。

Queue の利用

Queue は、インタフェース java.util.concurrent.BlockingQueue に継承されます。これは非同期の並列処理のために待ち行列として Queue を使うためのインタフェースを定義しています。

Queue の実装クラスの中で、最も馴染み深いのは LinkedList です。5.0 からは Queue も実装します。純粋な Queue の実装クラスとしては、PriorityQueue クラスとConcurrentLinkedQueue クラスが挙げられます。同じく、BlockingQueue は、五つのクラス ArrayBlockingQueue, DelayQueue, LinkedBlockingQueue, PriorityBlockingQueue, SynchronousQueue に実装されます。



Copyright © 2005 SUGAI, Manabu. All Rights Reserved.
SEO [PR] !uO z[y[WJ Cu