语言

IRandomAccess 接口

定义

实现使用的 List 标记接口指示它们支持快速(一般固定时间)随机访问。

[Android.Runtime.Register("java/util/RandomAccess", "", "Java.Util.IRandomAccessInvoker")]
public interface IRandomAccess : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("java/util/RandomAccess", "", "Java.Util.IRandomAccessInvoker")>]
type IRandomAccess = interface
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
派生
属性
实现

注解

实现使用的 List 标记接口指示它们支持快速(一般固定时间)随机访问。 此接口的主要用途是允许泛型算法更改其行为,以便在应用于随机或顺序访问列表时提供良好的性能。

当应用于顺序访问列表(例如LinkedList)时,用于操作随机访问列表(如ArrayList)的最佳算法可以生成二次行为。 建议使用泛型列表算法检查给定列表是否为 instanceof 此接口,然后应用在应用于顺序访问列表时提供性能不佳的算法,并在必要时更改其行为以确保可接受的性能。

据认识到,随机访问和顺序访问之间的区别通常是模糊的。 例如,一些 List 实现在实际操作中提供不成常的线性访问时间(如果它们变得巨大,但持续访问时间)。 List此类实现通常应实现此接口。 作为经验法则, List 如果对于类的典型实例,则实现应实现此接口:

for (int i=0, n=list.size(); i &lt; n; i++)
                    list.get(i);

运行速度比此循环快:

for (Iterator i=list.iterator(); i.hasNext(); )
                    i.next();

此接口是 Java Collections Framework 的成员。

在 1.4 中添加。

Java文档java.util.RandomAccess。

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

属性

名称 说明
Handle

获取基础 Android 对象的 JNI 值。

(继承自 IJavaObject)
JniIdentityHashCode

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

(继承自 IJavaPeerable)
JniManagedPeerState

托管对等方的状态。

(继承自 IJavaPeerable)
JniObjectReferenceControlBlock

实现使用的 List 标记接口指示它们支持快速(一般固定时间)随机访问。

(继承自 IJavaPeerable)
JniPeerMembers

成员访问和调用支持。

(继承自 IJavaPeerable)
PeerReference

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

(继承自 IJavaPeerable)

方法

名称 说明
Disposed()

在释放实例时调用。

(继承自 IJavaPeerable)
DisposeUnlessReferenced()

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

(继承自 IJavaPeerable)
Finalized()

在实例完成时调用。

(继承自 IJavaPeerable)
SetJniIdentityHashCode(Int32)

设置由 JniIdentityHashCode. 返回的值。

(继承自 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

实现使用的 List 标记接口指示它们支持快速(一般固定时间)随机访问。

(继承自 IJavaPeerable)
SetPeerReference(JniObjectReference)

设置由 PeerReference. 返回的值。

(继承自 IJavaPeerable)
UnregisterFromRuntime()

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

(继承自 IJavaPeerable)

扩展方法

名称 说明
GetJniTypeName(IJavaPeerable)

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

JavaAs<TResult>(IJavaPeerable)

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

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

实现使用的 List 标记接口指示它们支持快速(一般固定时间)随机访问。

TryJavaCast<TResult>(IJavaPeerable, TResult)

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

适用于