IMapEntry 接口

定义

映射项(键值对)。

[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
派生
属性
实现

注解

映射项(键值对)。 Entry 可能是不可修改的,或者如果实现可选 setValue 方法,则该值可修改。 条目可以独立于任何映射,也可以表示地图的条目集视图的条目。

如果通过循环访问Map#entrySet地图视图(通过使用增强for语句或Iterator隐式方式显式访问地图视图)来获取 Entry,则 Entry 将维护与其基础映射的连接。 与后盾映射的连接 仅在 条目集视图迭代期间有效。 在迭代期间,如果支持映射支持,则通过 Map.Entry#setValue setValue 该方法更改 Entry 的值将在后盾映射中可见。 此类条目的行为在映射项集视图的迭代之外未定义。 如果迭代器返回 Entry 后修改了后盾映射,则它还未定义,除非通过 setValue 该方法。 此外,对后盾映射中的映射值的更改可能会在条目集视图的相应条目中可见或可能不可见。

还可以通过其他方式(例如,使用Set#parallelStream parallelStreamSet#stream streamSet#spliterator spliterator方法、任Set#toArray toArray一重载或将条目集视图复制到另一个集合)从地图的条目集视图中获取条目。 未指定获取的 Entry 实例是否连接到基础映射、对此类条目的更改是否会影响映射的基础,反之亦然,以及此类条目是否支持可选 Map.Entry#setValue setValue 方法。

此外,可以直接从映射获取 Entry,例如,通过直接在接口上 NavigableMap 调用方法。 因此获取的条目通常未连接到映射,并且是调用时映射的不可修改快照。 此类条目也通常 setValue 不支持该方法。

通过直接构造 AbstractMap.SimpleEntryAbstractMap.SimpleImmutableEntry 类或从调用 Map#entry Map.entryMap.Entry#copyOf Map.Entry.copyOf 方法获取的条目未连接到任何映射。

已在 1.2 中添加。

Java文档java.util.Map.Entry

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

属性

名称 说明
Handle

获取基础 Android 对象的 JNI 值。

(继承自 IJavaObject)
JniIdentityHashCode

返回包装实例的值 java.lang.System.identityHashCode()

(继承自 IJavaPeerable)
JniManagedPeerState

托管对等方的状态。

(继承自 IJavaPeerable)
JniPeerMembers

成员访问和调用支持。

(继承自 IJavaPeerable)
Key

返回键。

PeerReference

返回JniObjectReference包装的Java对象实例。

(继承自 IJavaPeerable)
Value

返回值。

方法

名称 说明
ComparingByKey()

返回一个比较器,该比较器按键的自然顺序进行比较 Map.Entry

ComparingByKey(IComparator)

返回使用给定Comparator键比较的Map.Entry比较器。

ComparingByValue()

返回一个比较器,该比较器按自然顺序对值进行比较 Map.Entry

ComparingByValue(IComparator)

返回一个比较器,该比较器使用给定Comparator的值进行比较Map.Entry

CopyOf(IMapEntry)

映射项(键值对)。

Disposed()

在释放实例时调用。

(继承自 IJavaPeerable)
DisposeUnlessReferenced()

如果没有对此实例的未完成引用,则调用 Dispose();否则不执行任何操作。

(继承自 IJavaPeerable)
Equals(Object)

将指定的对象与此项进行比较,以便相等。

Finalized()

在实例完成时调用。

(继承自 IJavaPeerable)
GetHashCode()

返回此映射条目的哈希代码值。

SetJniIdentityHashCode(Int32)

设置由 JniIdentityHashCode. 返回的值。

(继承自 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

映射项(键值对)。

(继承自 IJavaPeerable)
SetPeerReference(JniObjectReference)

设置由 PeerReference. 返回的值。

(继承自 IJavaPeerable)
SetValue(Object)

将与此条目对应的值替换为指定的值(可选操作)。

UnregisterFromRuntime()

取消注册此实例,使运行时不会从将来 Java.Interop.JniRuntime+JniValueManager.PeekValue 的调用中返回它。

(继承自 IJavaPeerable)

扩展方法

名称 说明
GetJniTypeName(IJavaPeerable)

获取实例 self类型的 JNI 名称。

JavaAs<TResult>(IJavaPeerable)

尝试强制self键入TResult,检查强制是否在Java端有效。

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

映射项(键值对)。

TryJavaCast<TResult>(IJavaPeerable, TResult)

尝试强制self键入TResult,检查强制是否在Java端有效。

适用于