Share via


ArrayMap 類別

定義

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
屬性
實作

備註

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

傳回這個 Object 的執行時間類別。

(繼承來源 Object)
Handle

基礎 Android 實例的控制碼。

(繼承來源 Object)
IsEmpty

如果陣列對應不包含任何專案,則傳回 true。

JniIdentityHashCode

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)
JniPeerMembers

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

PeerReference

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)
ThresholdClass

此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。

(繼承來源 Object)
ThresholdType

此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式碼使用。

(繼承來源 Object)

方法

Clear()

讓陣列對應空白。

Clone()

建立並傳回這個 物件的複本。

(繼承來源 Object)
ContainsAll(ICollection<Object>)

判斷陣列對應是否包含指定集合中的所有索引鍵。

ContainsKey(Object)

檢查陣列中是否有索引鍵。

ContainsValue(Object)

檢查陣列中是否有值。

Dispose()

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)
Dispose(Boolean)

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)
EnsureCapacity(Int32)

請確定陣列對應可以保存至少 < var > minimumCapacity < /var > 專案。

EntrySet()

傳回 , java.util.Set 以逐一查看陣列對應中的所有對應並與其互動。

Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
ForEach(IBiConsumer)

針對預存順序中的所有專案執行指定的動作。

Get(Object)

從陣列擷取值。

GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
IndexOfKey(Object)

傳回集合中索引鍵的索引。

IndexOfValue(Object)

傳回索引 #valueAt ,其會傳回指定的值,如果沒有索引鍵對應至指定的值,則傳回負數。

JavaFinalize()

當垃圾收集判斷物件沒有其他參考時,由物件上的垃圾收集行程呼叫。

(繼承來源 Object)
KeyAt(Int32)

傳回陣列中指定索引處的索引鍵。

KeySet()

傳回 , java.util.Set 以逐一查看陣列對應中的所有索引鍵並與其互動。

Notify()

喚醒正在等候此物件的監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
Put(Object, Object)

將新值新增至陣列對應。

PutAll(ArrayMap)

#put(Object, Object)在 var > array < /var 中執行所有索引鍵/值組的 <>

PutAll(IDictionary)

#put(Object, Object)在 var > map < /var 中執行所有索引鍵/值組的 <>

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 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)
ToString()

傳回物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)
ValueAt(Int32)

傳回陣列中指定索引處的值。

Values()

傳回 , java.util.Collection 以逐一查看陣列對應中的所有值並與其互動。

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 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)
IJavaPeerable.DisposeUnlessReferenced()

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)
IJavaPeerable.Finalized()

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)
IJavaPeerable.JniManagedPeerState

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

(繼承來源 Object)

擴充方法

JavaCast<TResult>(IJavaObject)

執行 Android 執行時間檢查的類型轉換。

JavaCast<TResult>(IJavaObject)

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

GetJniTypeName(IJavaPeerable)

ArrayMap 是一般索引鍵/ > 值對應資料結構,其設計目的是比傳統 java.util.HashMap 更有記憶體效率。

適用於