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). Универсальные алгоритмы списков рекомендуется проверить, является instanceof ли данный список этим интерфейсом перед применением алгоритма, который обеспечит низкую производительность, если они были применены к последовательному списку доступа, и изменить их поведение при необходимости, чтобы гарантировать допустимую производительность.
Признается, что различие между случайным и последовательным доступом часто нечетко. Например, некоторые List реализации обеспечивают асимметрично линейное время доступа, если они получают огромные, но постоянное время доступа на практике.
List Такая реализация обычно должна реализовывать этот интерфейс. Как правило, реализация должна реализовать этот интерфейс, List если для типичных экземпляров класса этот цикл:
for (int i=0, n=list.size(); i < n; i++)
list.get(i);
выполняется быстрее, чем этот цикл:
for (Iterator i=list.iterator(); i.hasNext(); )
i.next();
Этот интерфейс является членом платформы коллекций Java.
Добавлено в версии 1.4.
Java документации по java.util.RandomAccess.
Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".
Свойства
| Имя. | Описание |
|---|---|
| Handle |
Возвращает значение JNI базового объекта Android. (Унаследовано от IJavaObject) |
| JniIdentityHashCode |
Возвращает значение |
| JniManagedPeerState |
Состояние управляемого однорангового узла. (Унаследовано от IJavaPeerable) |
| JniObjectReferenceControlBlock |
Интерфейс маркера, используемый |
| JniPeerMembers |
Поддержка доступа к членам и вызовов. (Унаследовано от IJavaPeerable) |
| PeerReference |
JniObjectReference Возвращает экземпляр объекта в оболочке Java. (Унаследовано от IJavaPeerable) |
Методы
| Имя. | Описание |
|---|---|
| Disposed() |
Вызывается при удалении экземпляра. (Унаследовано от IJavaPeerable) |
| DisposeUnlessReferenced() |
Если нет невыполненных ссылок на этот экземпляр, то вызывается |
| Finalized() |
Вызывается при завершении экземпляра. (Унаследовано от IJavaPeerable) |
| SetJniIdentityHashCode(Int32) |
Задайте значение, возвращаемое |
| SetJniManagedPeerState(JniManagedPeerStates) |
Интерфейс маркера, используемый |
| SetPeerReference(JniObjectReference) |
Задайте значение, возвращаемое |
| UnregisterFromRuntime() |
Отмените регистрацию этого экземпляра, чтобы среда выполнения не возвращала ее из будущих Java.Interop.JniRuntime+JniValueManager.PeekValue вызовов. (Унаследовано от IJavaPeerable) |
Методы расширения
| Имя. | Описание |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Возвращает имя JNI типа экземпляра |
| JavaAs<TResult>(IJavaPeerable) |
Попробуйте принуждать к типу |
| JavaCast<TResult>(IJavaObject) |
Выполняет преобразование типа, проверяемого средой выполнения Android. |
| JavaCast<TResult>(IJavaObject) |
Интерфейс маркера, используемый |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Попробуйте принуждать к типу |