IMapEntry 介面
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
一個映射條目(鍵值對)。
[Android.Runtime.Register("java/util/Map$Entry", "", "Java.Util.IMapEntryInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })]
public interface IMapEntry : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("java/util/Map$Entry", "", "Java.Util.IMapEntryInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })>]
type IMapEntry = interface
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 衍生
- 屬性
- 實作
備註
一個映射條目(鍵值對)。 條目可能是不可修改的,或若實作選用 setValue 方法,值可修改。 條目可以獨立於任何地圖,或代表地圖的條目集合視圖。
若條目是透過迭代 Map#entrySet 映射視圖獲得,無論是明示使用 Iterator 或透過增強 for 語句隱含,則該條目會維持與其底層映射的連結。 這種與背對映射的連結 僅 在入口集視圖的迭代中有效。 在迭代過程中,若背襯映射支持,透過該 Map.Entry#setValue setValue 方法改變條目值的結果會顯示在背襯映射中。 此類條目的行為在地圖的入口集視圖的迭代外是未定義的。 若在迭代器返回條目後,背對映射被修改,則該方法未定義,除非透過該 setValue 方法。 此外,背對映射值的變更,在入口集視圖對應的 Entry 中可能會被看見,也可能看不到。
條目也可透過其他方式從地圖的入口集視圖中取得,例如使用 Set#parallelStream parallelStream、 Set#stream stream、 Set#spliterator spliterator 方法、任何 Set#toArray toArray 超載,或將條目集視圖複製到其他集合中。 目前尚不明確指出所取得的 Entry 實例是否與底層映射相連,該 Entry 的變更是否會影響底層映射,反之亦然,以及此類 Entry 是否支援可選 Map.Entry#setValue setValue 方法。
此外,條目也可以直接從映射取得,例如透過介面上直接 NavigableMap 呼叫方法。 由此獲得的條目通常不連接於映射,且是呼叫時間映射的不可修改快照。 此類條目通常也不支援此 setValue 方法。
透過直接構造 AbstractMap.SimpleEntry or AbstractMap.SimpleImmutableEntry 類別或 Map#entry Map.entry 呼叫 or Map.Entry#copyOf Map.Entry.copyOf 方法所取得的 Entry,並不連接到任何映射。
在 1.2 版本中加入。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。
屬性
| 名稱 | Description |
|---|---|
| Handle |
取得底層 Android 物件的 JNI 值。 (繼承來源 IJavaObject) |
| JniIdentityHashCode |
回傳包裹實例的 |
| JniManagedPeerState |
管理貴族的狀況。 (繼承來源 IJavaPeerable) |
| JniObjectReferenceControlBlock |
一個映射條目(鍵值對)。 (繼承來源 IJavaPeerable) |
| JniPeerMembers |
成員存取與召喚支援。 (繼承來源 IJavaPeerable) |
| Key |
還鑰匙。 |
| PeerReference |
回傳JniObjectReference包裹後的 Java 物件實例。 (繼承來源 IJavaPeerable) |
| Value |
傳回值。 |
方法
| 名稱 | Description |
|---|---|
| ComparingByKey() |
回傳一個在鍵上自然順序比較 |
| ComparingByKey(IComparator) |
回傳一個比較器,利用 |
| ComparingByValue() |
回傳一個比較器,該比較器以自然順序比較 |
| ComparingByValue(IComparator) |
回傳一個比較器,該比較器使用給定 |
| CopyOf(IMapEntry) |
一個映射條目(鍵值對)。 |
| Disposed() |
當實例被處理後才被召喚。 (繼承來源 IJavaPeerable) |
| DisposeUnlessReferenced() |
如果沒有未解決的參考資料,則 |
| Equals(Object) |
將指定物件與此項比較以求相等。 |
| Finalized() |
當實例完成後才會被通知。 (繼承來源 IJavaPeerable) |
| GetHashCode() |
回傳此地圖條目的雜湊碼值。 |
| SetJniIdentityHashCode(Int32) |
將回傳的值設為 |
| SetJniManagedPeerState(JniManagedPeerStates) |
一個映射條目(鍵值對)。 (繼承來源 IJavaPeerable) |
| SetPeerReference(JniObjectReference) |
將回傳的值設為 |
| SetValue(Object) |
將該條目的對應值替換為指定的值(可選操作)。 |
| UnregisterFromRuntime() |
取消註冊此實例,讓執行時不會在未來 Java.Interop.JniRuntime+JniValueManager.PeekValue 的呼叫中回傳該實例。 (繼承來源 IJavaPeerable) |
擴充方法
| 名稱 | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時檢查型別轉換。 |
| JavaCast<TResult>(IJavaObject) |
一個映射條目(鍵值對)。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |