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 マーカー インターフェイスは、高速 (一般的に一定時間) のランダム アクセスをサポートしていることを示します。 このインターフェイスの主な目的は、汎用アルゴリズムがランダムまたはシーケンシャル アクセス リストに適用された場合に優れたパフォーマンスを提供するように、その動作を変更できるようにすることです。

ランダム アクセス リスト (など ArrayList) を操作するための最適なアルゴリズムは、シーケンシャル アクセス リスト (など LinkedList) に適用すると 2 次動作を生成できます。 汎用リスト アルゴリズムは、シーケンシャル アクセス リストに適用された場合にパフォーマンスが低下するアルゴリズムを適用する前に、指定されたリスト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)
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)

拡張メソッド

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

実装で使用される List マーカー インターフェイスは、高速 (一般的に一定時間) のランダム アクセスをサポートしていることを示します。

GetJniTypeName(IJavaPeerable)

実装で使用される List マーカー インターフェイスは、高速 (一般的に一定時間) のランダム アクセスをサポートしていることを示します。

適用対象