IQueue インターフェイス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
処理の前に要素を保持するように設計されたコレクション。
[Android.Runtime.Register("java/util/Queue", "", "Java.Util.IQueueInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public interface IQueue : IDisposable, Java.Interop.IJavaPeerable, Java.Util.ICollection
[<Android.Runtime.Register("java/util/Queue", "", "Java.Util.IQueueInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type IQueue = interface
interface ICollection
interface IIterable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 派生
- 属性
- 実装
注釈
処理の前に要素を保持するように設計されたコレクション。 キューは、基本的な Collection 操作に加えて、追加の挿入、抽出、および検査操作を提供します。 これらの各メソッドは 2 つの形式で存在します。1 つは操作が失敗した場合に例外をスローし、もう 1 つは特殊な値 (操作に応じて null または false) を返します。 後者の形式の挿入操作は、容量制限付きの Queue 実装で使用するために特別に設計されています。ほとんどの実装では、挿入操作は失敗できません。
<table class="striped"><caption>Summary of Queue methods</caption><thead><tr><td></td><th scope="col" style="font-weight:normal; font-style:italic">Throws exception</th><th scope="col" style="font-weight:normal; font-style:italic">Returns special value</th/tr><></thead><tbody><tr><th scope="row">Insert</th><td>#add(Object) add(e)</td><td>#offer(Object) offer(e)</td></tr><tr><th scope="row">Remove</th><td>#remove() remove()</td><td>#poll() poll()</ td></tr><tr><th scope="row">Examine</th><td>#element() element()</td><td>#peek() peek()</td></tr></tbody></table>
キューは通常、FIFO (先入れ先出し) の方法で要素を並べ替えますが、必ずしもそうであるとは限りません。 例外の中には、指定された比較子に従って要素を並べ替える優先順位キュー、または要素の自然な順序に従って要素を並べ替える優先順位キュー、および要素 LIFO (先入れ先出し) を並べ替える LIFO キュー (またはスタック) があります。 使用される順序が何であれ、キューの <em>head</em> は、 #remove() または #poll()の呼び出しによって削除される要素です。 FIFO キューでは、すべての新しい要素がキューの <em>tail</em> に挿入されます。 他の種類のキューでは、異なる配置規則が使用される場合があります。 すべての Queue 実装では、その順序付けプロパティを指定する必要があります。
#offer offer メソッドは可能であれば要素を挿入し、それ以外の場合はfalseを返します。 これは、 java.util.Collection#add Collection.add メソッドとは異なります。これは、オフの例外をスローすることによってのみ要素を追加できない可能性があります。
offerメソッドは、固定容量 (または > など) での例外的な発生ではなく、故障が正常な場合に使用するように設計されています。bounded>)キュー。
#remove()メソッドと#poll()メソッドは、キューの先頭を削除して返します。 キューから削除される要素は、キューの順序付けポリシーの関数であり、実装によって異なります。
remove()メソッドとpoll() メソッドは、キューが空の場合にのみ動作が異なります。remove() メソッドは例外をスローし、poll() メソッドはnullを返します。
#element()メソッドと#peek()メソッドはキューの先頭を返しますが、削除しません。
Queue インターフェイスでは、同時プログラミングで一般的なブロッキング キュー メソッドは定義されません。 要素が表示されるのを待つ、またはスペースが使用可能になるのを待つこれらのメソッドは、このインターフェイスを拡張する java.util.concurrent.BlockingQueue インターフェイスで定義されます。
Queue 実装では通常、 null 要素の挿入は許可されませんが、 LinkedListなどの一部の実装では、 nullの挿入は禁止されていません。 これを許可する実装でも、 null は Queueに挿入しないでください。 null は、キューに要素が含まれていないことを示すために、 poll メソッドによって特別な戻り値としても使用されるためです。
Queue 一般に、メソッドの要素ベースのバージョン equals および hashCode を定義するのではなく、代わりにクラス Objectから ID ベースのバージョンを継承します。これは、要素ベースの等価性が、同じ要素が異なる順序付けプロパティを持つキューに対して常に明確に定義されているわけではないためです。
1\.5 で追加されました。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
プロパティ
| 名前 | 説明 |
|---|---|
| Handle |
基になる Android オブジェクトの JNI 値を取得します。 (継承元 IJavaObject) |
| IsEmpty |
この |
| JniIdentityHashCode |
ラップされたインスタンスの |
| JniManagedPeerState |
マネージド ピアの状態。 (継承元 IJavaPeerable) |
| JniObjectReferenceControlBlock |
処理の前に要素を保持するように設計されたコレクション。 (継承元 IJavaPeerable) |
| JniPeerMembers |
メンバー アクセスと呼び出しのサポート。 (継承元 IJavaPeerable) |
| PeerReference |
ラップされたJava オブジェクト インスタンスのJniObjectReferenceを返します。 (継承元 IJavaPeerable) |
メソッド
| 名前 | 説明 |
|---|---|
| Add(Object) |
容量制限に違反せずにすぐに実行できる場合は、指定された要素をこのキューに挿入し、成功すると |
| AddAll(ICollection) |
指定したコレクション内のすべての要素をこのコレクションに追加します (省略可能な操作)。 (継承元 ICollection) |
| Clear() |
このコレクションからすべての要素を削除します (省略可能な操作)。 (継承元 ICollection) |
| Contains(Object) |
このコレクションに指定した要素が含まれている場合は、 |
| ContainsAll(ICollection) |
このコレクションに指定したコレクション内のすべての要素が含まれている場合は、 |
| Disposed() |
インスタンスが破棄されたときに呼び出されます。 (継承元 IJavaPeerable) |
| DisposeUnlessReferenced() |
このインスタンスへの未処理の参照がない場合は、 |
| Element() |
このキューの先頭を取得しますが、削除しません。 |
| Equals(Object) |
指定したオブジェクトをこのコレクションと比較して等しいかどうかを確認します。 (継承元 ICollection) |
| Finalized() |
インスタンスが終了したときに呼び出されます。 (継承元 IJavaPeerable) |
| ForEach(IConsumer) |
すべての要素が処理されるか、アクションが例外をスローするまで、 |
| GetHashCode() |
このコレクションのハッシュ コード値を返します。 (継承元 ICollection) |
| Iterator() |
このコレクション内の要素に対する反復子を返します。 (継承元 ICollection) |
| Offer(Object) |
容量制限に違反することなくすぐに行うことができる場合は、指定した要素をこのキューに挿入します。 |
| Peek() |
このキューの先頭を取得しますが、削除は行いません。または、このキューが空の場合は |
| Poll() |
このキューの先頭を取得して削除するか、このキューが空の場合は |
| Remove() |
このキューの先頭を取得して削除します。 |
| Remove(Object) |
指定した要素のインスタンスが存在する場合は、このコレクションから 1 つのインスタンスを削除します (省略可能な操作)。 (継承元 ICollection) |
| RemoveAll(ICollection) |
指定したコレクションにも含まれているこのコレクションのすべての要素を削除します (省略可能な操作)。 (継承元 ICollection) |
| RemoveIf(IPredicate) |
指定された述語を満たすこのコレクションのすべての要素を削除します (省略可能な操作)。 (継承元 ICollection) |
| RetainAll(ICollection) |
指定したコレクションに含まれるこのコレクション内の要素のみを保持します (省略可能な操作)。 (継承元 ICollection) |
| SetJniIdentityHashCode(Int32) |
|
| SetJniManagedPeerState(JniManagedPeerStates) |
処理の前に要素を保持するように設計されたコレクション。 (継承元 IJavaPeerable) |
| SetPeerReference(JniObjectReference) |
|
| Size() |
このコレクション内の要素の数を返します。 (継承元 ICollection) |
| Spliterator() |
この |
| ToArray() |
このコレクション内のすべての要素を含む配列を返します。 (継承元 ICollection) |
| ToArray(IIntFunction) |
指定した |
| ToArray(Object[]) |
このコレクション内のすべての要素を含む配列を返します。返される配列のランタイム型は、指定された配列のランタイム型です。 (継承元 ICollection) |
| UnregisterFromRuntime() |
ランタイムが将来の Java.Interop.JniRuntime+JniValueManager.PeekValue 呼び出しから返されないように、このインスタンスの登録を解除します。 (継承元 IJavaPeerable) |
明示的なインターフェイスの実装
| 名前 | 説明 |
|---|---|
| IIterable.Spliterator() |
このコレクション内の要素に対して |
拡張メソッド
| 名前 | 説明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
インスタンス |
| JavaAs<TResult>(IJavaPeerable) |
|
| JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
| JavaCast<TResult>(IJavaObject) |
処理の前に要素を保持するように設計されたコレクション。 |
| ToEnumerable(IIterable) |
Java IIterableを反復処理するIEnumerableを返します。これにより、 |
| ToEnumerable<T>(IIterable) |
Java IIterableを反復処理し、各要素を |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
|