ArrayMap 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap
更有記憶體效率。
[Android.Runtime.Register("android/util/ArrayMap", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })]
public sealed class ArrayMap : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Util.IMap
[<Android.Runtime.Register("android/util/ArrayMap", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "K", "V" })>]
type ArrayMap = class
inherit Object
interface IMap
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 繼承
- 屬性
- 實作
備註
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap
更有記憶體效率。 它會將其對應保留在陣列資料結構中 -- 每個專案的雜湊碼整數陣列,以及索引鍵/值組的 Object 陣列。 這可讓您避免針對放入地圖的每個專案建立額外的物件,而且也會嘗試控制這些陣列大小的成長更積極 (,因為成長它們只需要複製陣列中的專案,而不是重建雜湊對應) 。
請注意,此實作不適合包含大量專案的資料結構。 它通常比傳統的 HashMap 慢,因為查閱需要二進位搜尋,而且新增和移除需要插入和刪除陣列中的專案。 對於最多保留數百個專案的容器,效能差異並不重要,小於 50%。
由於此容器旨在更妥善平衡記憶體使用量,不同于大部分的標準 JAVA 容器,它會在移除專案時壓縮其陣列。 目前您無法控制此壓縮 -- 如果您設定容量,然後移除專案,它可能會減少容量,以更符合目前的大小。 在未來,明確呼叫來設定容量應該關閉這種積極壓縮行為。
這個結構是 < b > NOT < /b > 執行緒安全。
的 android.util.ArrayMap
JAVA 檔。
此頁面的部分是根據 原始碼專案所建立和共用的工作進行修改,並根據中所述的詞彙使用。
建構函式
ArrayMap() |
建立新的空白 ArrayMap。 |
ArrayMap(ArrayMap) |
使用來自指定 ArrayMap 的對應建立新的 ArrayMap。 |
ArrayMap(Int32) |
建立具有指定初始容量的新 ArrayMap。 |
屬性
Class |
傳回這個 |
Handle |
基礎 Android 實例的控制碼。 (繼承來源 Object) |
IsEmpty |
如果陣列對應不包含任何專案,則傳回 true。 |
JniIdentityHashCode |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
JniPeerMembers |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
PeerReference |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
ThresholdClass |
此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。 (繼承來源 Object) |
ThresholdType |
此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。 (繼承來源 Object) |
方法
Clear() |
讓陣列對應空白。 |
Clone() |
建立並傳回這個 物件的複本。 (繼承來源 Object) |
ContainsAll(ICollection<Object>) |
判斷陣列對應是否包含指定集合中的所有索引鍵。 |
ContainsKey(Object) |
檢查陣列中是否有索引鍵。 |
ContainsValue(Object) |
檢查陣列中是否有值。 |
Dispose() |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
Dispose(Boolean) |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
EnsureCapacity(Int32) |
請確定陣列對應可以保存至少 < var > minimumCapacity < /var > 專案。 |
EntrySet() |
傳回 , |
Equals(Object) |
指出其他物件是否「等於」這個物件。 (繼承來源 Object) |
ForEach(IBiConsumer) |
針對預存順序中的所有專案執行指定的動作。 |
Get(Object) |
從陣列擷取值。 |
GetHashCode() |
傳回此物件的雜湊碼值。 (繼承來源 Object) |
IndexOfKey(Object) |
傳回集合中索引鍵的索引。 |
IndexOfValue(Object) |
傳回索引 |
JavaFinalize() |
當垃圾收集判斷物件沒有其他參考時,由物件上的垃圾收集行程呼叫。 (繼承來源 Object) |
KeyAt(Int32) |
傳回陣列中指定索引處的索引鍵。 |
KeySet() |
傳回 , |
Notify() |
喚醒正在等候此物件的監視器的單一線程。 (繼承來源 Object) |
NotifyAll() |
喚醒正在等候此物件監視器的所有線程。 (繼承來源 Object) |
Put(Object, Object) |
將新值新增至陣列對應。 |
PutAll(ArrayMap) |
|
PutAll(IDictionary) |
|
Remove(Object) |
從陣列對應中移除現有的索引鍵。 |
RemoveAll(ICollection<Object>) |
移除陣列對應中存在於指定集合中的所有索引鍵。 |
RemoveAt(Int32) |
移除指定索引處的索引鍵/值對應。 |
ReplaceAll(IBiFunction) |
將每個專案的值取代為叫用該專案上指定函式的結果,直到處理所有專案或函式擲回例外狀況為止。 |
RetainAll(ICollection<Object>) |
移除陣列對應 < 中不存在 < b > /b > 的所有索引鍵存在於指定的集合中。 |
SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
SetValueAt(Int32, Object) |
在陣列中的指定索引處設定值。 |
Size() |
傳回此陣列對應中的專案數。 |
ToArray<T>() |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
ToString() |
傳回物件的字串表示。 (繼承來源 Object) |
UnregisterFromRuntime() |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
ValueAt(Int32) |
傳回陣列中指定索引處的值。 |
Values() |
傳回 , |
Wait() |
讓目前的執行緒等到喚醒為止,通常是藉由 < em > notified < /em > 或 < em > interrupted < /em > 來喚醒。 (繼承來源 Object) |
Wait(Int64) |
讓目前的執行緒等到喚醒為止,通常是 < 透過 em > notified < /em 或 em > interrupted < /em >> ,或 < 直到經過一定數量的即時為止。 (繼承來源 Object) |
Wait(Int64, Int32) |
讓目前的執行緒等到喚醒為止,通常是 < 透過 em > notified < /em 或 em > interrupted < /em >> ,或 < 直到經過一定數量的即時為止。 (繼承來源 Object) |
明確介面實作
IJavaPeerable.Disposed() |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
IJavaPeerable.DisposeUnlessReferenced() |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
IJavaPeerable.Finalized() |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
IJavaPeerable.JniManagedPeerState |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
IJavaPeerable.SetPeerReference(JniObjectReference) |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
擴充方法
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |
GetJniTypeName(IJavaPeerable) |
ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 |