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.ArrayMapJava 文档。

此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。

构造函数

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 <通知/em> 或 <em>interrupted</em>。<>

(继承自 Object)
Wait(Int64)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)
Wait(Int64, Int32)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/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具有更高的内存效率。

适用于