ISortedMap インターフェイス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
キーにMapem<total の順序付け>/em<をさらに提供する>。
[Android.Runtime.Register("java/util/SortedMap", "", "Java.Util.ISortedMapInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })]
public interface ISortedMap : IDisposable, Java.Interop.IJavaPeerable, Java.Util.ISequencedMap
[<Android.Runtime.Register("java/util/SortedMap", "", "Java.Util.ISortedMapInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })>]
type ISortedMap = interface
interface IMap
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface ISequencedMap
- 派生
- 属性
- 実装
注釈
キーにMapem<total の順序付け>/em<をさらに提供する>。 マップは、キーの同等の自然な順序に従って、または通常、並べ替えられたマップの作成時に提供される Comparator に従って並べ替えられます。 この順序は、並べ替えられたマップのコレクション ビュー ( entrySet、 keySet 、および values メソッドによって返される) を反復処理するときに反映されます。 順序付けを利用するために、いくつかの追加操作が用意されています。 (このインターフェイスは、 SortedSetのマップアナログです。
並べ替えられたマップに挿入されるすべてのキーは、 Comparable インターフェイスを実装する必要があります (または、指定された比較子が受け入れる必要があります)。 さらに、このようなキーはすべて<em>順に同等である必要があります</em>: k1.compareTo(k2) (またはcomparator.compare(k1, k2)) は、並べ替えられたマップ内のキーClassCastExceptionおよびk1に対してk2をスローしてはなりません。 この制限に違反しようとすると、問題のあるメソッドまたはコンストラクターの呼び出しによって ClassCastExceptionがスローされます。
並べ替えられたマップが<インターフェイスを正しく実装する場合は、並べ替えられたマップによって維持される順序 (明示的な比較子が指定されているかどうかに関係なく) >em<等しい>/emMap必要があることに注意してください。 (equalsComparable/emComparator を使用した<em>consistent の正確な定義については、< インターフェイスまたは> インターフェイスを参照してください)。これは、Map インターフェイスがequals操作の観点から定義されているが、並べ替えられたマップは、そのcompareTo (またはcompare) メソッドを使用してすべてのキー比較を実行するため、このメソッドで等しいと見なされる 2 つのキーは、並べ替えられたマップの観点から等しいためです。 ツリー マップの動作 <em>is</em> 順序が等しい場合でも明確に定義されています。 Map インターフェイスの一般的なコントラクトに従うだけで失敗します。
汎用の並べ替えられたマップ実装クラスはすべて、4 つの "標準" コンストラクターを提供する必要があります。 必要なコンストラクターをインターフェイスで指定できないため、この推奨事項を適用することはできません。 すべての並べ替えられたマップ実装で想定される "標準" コンストラクターは、 <ol><li>A void (引数なし) コンストラクターです。これにより、キーの自然な順序に従って並べ替えられた空の並べ替えられたマップが作成されます</li><li>指定した比較子に従って並べ替えられた空の並べ替えられたマップを作成する、 Comparator型の 1 つの引数を持つコンストラクター。</li><li>キーの自然な順序に従って並べ替えられた、引数と同じキーと値のマッピングを持つ新しいマップを作成する、 Map型の単一の引数を持つコンストラクター</li><li>型の単一の引数を持つコンストラクター SortedMap。これは、同じキーと値のマッピングと、入力で並べ替えられた map と同じ順序で新しい並べ替えられたマップを作成します</li></ol>
<strong>Note</strong>: いくつかのメソッドは、キー範囲が制限されたサブマップを返します。 このような範囲は、 <em>half-open</em> です。つまり、低エンドポイントは含まれますが、高いエンドポイントは含まれません (該当する場合)。
<em>closed range</em> (両方のエンドポイントを含む) が必要であり、キーの種類によって特定のキーの後続処理を計算できる場合は、lowEndpointからsuccessor(highEndpoint)へのサブ範囲を要求するだけです。 たとえば、 m が、キーが文字列であるマップであるとします。 次のイディオムは、キーがmとlowの間にあるhigh内のすべてのキーと値のマッピングを含むビューを取得します。
SortedMap<String, V> sub = m.subMap(low, high+"\0");
同様の手法を使用して、 <em>open range</em> (どちらのエンドポイントも含む) を生成できます。 次のイディオムは、mとlowの間のキーが排他的であるhigh内のすべてのキーと値のマッピングを含むビューを取得します。
SortedMap<String, V> sub = m.subMap(low+"\0", high);
このインターフェイスは、Java コレクション フレームワークのメンバーです。
1.2 で追加されました。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
プロパティ
| 名前 | 説明 |
|---|---|
| Handle |
基になる Android オブジェクトの JNI 値を取得します。 (継承元 IJavaObject) |
| IsEmpty |
このマップが空かどうかを返します。 (継承元 IMap) |
| JniIdentityHashCode |
ラップされたインスタンスの |
| JniManagedPeerState |
マネージド ピアの状態。 (継承元 IJavaPeerable) |
| JniObjectReferenceControlBlock |
キーに |
| JniPeerMembers |
メンバー アクセスと呼び出しのサポート。 (継承元 IJavaPeerable) |
| PeerReference |
ラップされたJava オブジェクト インスタンスのJniObjectReferenceを返します。 (継承元 IJavaPeerable) |
メソッド
| 名前 | 説明 |
|---|---|
| Clear() |
このマップからすべてのマッピングを削除します (省略可能な操作)。 (継承元 IMap) |
| Comparator() |
このマップ内のキーの順序付けに使用される比較子を返します。または、このマップがそのキーの同等の自然順序を使用している場合は |
| Compute(Object, IBiFunction) |
指定したキーとその現在のマップされた値のマッピングの計算を試みます。現在のマッピングがない場合は |
| ComputeIfAbsent(Object, IFunction) |
指定したキーがまだ値に関連付けられていない (または |
| ComputeIfPresent(Object, IBiFunction) |
指定したキーの値が存在し、null 以外の場合は、キーとその現在のマップされた値 (省略可能な操作) を指定して、新しいマッピングの計算を試みます。 (継承元 IMap) |
| ContainsKey(Object) |
このマップに指定したキーのマッピングが含まれている場合は、 |
| ContainsValue(Object) |
このマップが 1 つ以上のキーを指定した値にマップする場合は、 |
| Disposed() |
インスタンスが破棄されたときに呼び出されます。 (継承元 IJavaPeerable) |
| DisposeUnlessReferenced() |
このインスタンスへの未処理の参照がない場合は、 |
| EntrySet() |
このマップに含まれるマッピングの |
| Equals(Object) |
指定したオブジェクトをこのマップと比較して等しいかどうかを確認します。 (継承元 IMap) |
| Finalized() |
インスタンスが終了したときに呼び出されます。 (継承元 IJavaPeerable) |
| FirstEntry() |
キーに |
| FirstKey() |
このマップ内の現在の最初の (最も低い) キーを返します。 |
| ForEach(IBiConsumer) |
すべてのエントリが処理されるか、アクションが例外をスローするまで、このマップ内の各エントリに対して指定されたアクションを実行します。 (継承元 IMap) |
| Get(Object) |
指定したキーのマップ先の値を返します。このマップにキーのマッピングが含まれている場合は |
| GetHashCode() |
このマップのハッシュ コード値を返します。 (継承元 IMap) |
| GetOrDefault(Object, Object) |
指定したキーのマップ先の値を返します。このマップにキーのマッピングが含まれている場合は |
| HeadMap(Object) |
キーが |
| KeySet() |
このマップに含まれるキーの |
| LastEntry() |
キーに |
| LastKey() |
このマップ内の現在の最後の (最も高い) キーを返します。 |
| Merge(Object, Object, IBiFunction) |
指定したキーがまだ値に関連付けられていないか、null に関連付けられている場合は、指定された null 以外の値に関連付けます (省略可能な操作)。 (継承元 IMap) |
| PollFirstEntry() |
キーに |
| PollLastEntry() |
キーに |
| Put(Object, Object) |
指定した値を、このマップ内の指定したキーに関連付けます (省略可能な操作)。 (継承元 IMap) |
| PutAll(IDictionary) |
指定したマップからすべてのマッピングをこのマップにコピーします (省略可能な操作)。 (継承元 IMap) |
| PutFirst(Object, Object) |
指定されたマッピングがまだ存在しない場合はマップに挿入し、マッピングが既に存在する場合は値を置き換えます (省略可能な操作)。 (継承元 ISequencedMap) |
| PutIfAbsent(Object, Object) |
指定したキーがまだ値に関連付けられていない (または |
| PutLast(Object, Object) |
指定されたマッピングがまだ存在しない場合はマップに挿入し、マッピングが既に存在する場合は値を置き換えます (省略可能な操作)。 (継承元 ISequencedMap) |
| Remove(Object, Object) |
指定した値に現在マップされている場合にのみ、指定したキーのエントリを削除します (省略可能な操作)。 (継承元 IMap) |
| Remove(Object) |
キーが存在する場合は、このマップからキーのマッピングを削除します (省略可能な操作)。 (継承元 IMap) |
| Replace(Object, Object, Object) |
指定した値に現在マップされている場合にのみ、指定したキーのエントリを置き換えます (省略可能な操作)。 (継承元 IMap) |
| Replace(Object, Object) |
指定したキーのエントリが現在何らかの値にマップされている場合にのみ、そのエントリを置き換えます (省略可能な操作)。 (継承元 IMap) |
| ReplaceAll(IBiFunction) |
すべてのエントリが処理されるか、関数が例外をスローするまで、各エントリの値を、そのエントリで指定された関数を呼び出した結果に置き換えます (省略可能な操作)。 (継承元 IMap) |
| Reversed() |
このマップの逆順ビューを返します。 (継承元 ISequencedMap) |
| SequencedEntrySet() |
このマップの |
| SequencedKeySet() |
このマップの |
| SequencedValues() |
このマップの |
| SetJniIdentityHashCode(Int32) |
|
| SetJniManagedPeerState(JniManagedPeerStates) |
キーに |
| SetPeerReference(JniObjectReference) |
|
| Size() |
このマップ内のキーと値のマッピングの数を返します。 (継承元 IMap) |
| SubMap(Object, Object) |
キーの範囲が |
| TailMap(Object) |
キーが |
| UnregisterFromRuntime() |
ランタイムが将来の Java.Interop.JniRuntime+JniValueManager.PeekValue 呼び出しから返されないように、このインスタンスの登録を解除します。 (継承元 IJavaPeerable) |
| Values() |
このマップに含まれる値の |
明示的なインターフェイスの実装
| 名前 | 説明 |
|---|---|
| ISequencedMap.PutFirst(Object, Object) |
|
| ISequencedMap.PutLast(Object, Object) |
|
| ISequencedMap.Reversed() |
キーに |
拡張メソッド
| 名前 | 説明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
インスタンス |
| JavaAs<TResult>(IJavaPeerable) |
|
| JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
| JavaCast<TResult>(IJavaObject) |
キーに |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
|