IQueue Интерфейс

Определение

Коллекция, предназначенная для хранения элементов перед обработкой.

[Android.Runtime.Register("java/util/Queue", "", "Java.Util.IQueueInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public interface IQueue : IDisposable, Java.Interop.IJavaPeerable, Java.Util.ICollection
[<Android.Runtime.Register("java/util/Queue", "", "Java.Util.IQueueInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type IQueue = interface
    interface ICollection
    interface IIterable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Производный
Атрибуты
Реализации

Комментарии

Коллекция, предназначенная для хранения элементов перед обработкой. Помимо базовых Collection операций, очереди предоставляют дополнительные операции вставки, извлечения и проверки. Каждый из этих методов существует в двух формах: один создает исключение в случае сбоя операции, другой возвращает специальное значение ( null или false, в зависимости от операции). Последняя форма операции вставки предназначена специально для использования с реализациями с ограниченной Queue емкостью; в большинстве реализаций операции вставки не могут завершаться сбоем.

<table class="striped">подпись Summary of Queue methods</подпись>< thead><tr<>td></td<>th область="col" style="font-weight:normal; font-style:italic">Throws exception</th><область="col" style="font-weight:normal; font-style:italic">Returns special value/<>< th>/tr></thead><tbody<>tr<>th область="row">Insert</th<>td<>#add(Object) add(e)/td/td><<<>>#offer(Object) offer(e)/tr><tr<>th область="row">Remove</th<>td>#remove() remove()</td<>td#poll() poll()></td<>/tr><tr th><< область="строка">Проверка</th<>td<#element() element()>/td><td#peek() peek()<>/td<>/tr<>/tbody></table>

Обычно в очередях (но не обязательно) элементы упорядочивается в формате FIFO (первым в начале). Исключениями являются очереди приоритета, которые упорядочивает элементы в соответствии с предоставленным компаратором, или естественное упорядочение элементов, и очереди LIFO (или стеки), которые упорядочивает элементы LIFO (last-in-first-out). Независимо от используемого порядка, <em>head</em> очереди — это элемент, который будет удален вызовом #remove() или #poll(). В очереди FIFO все новые элементы вставляются в конечный <>или< конечный> фрагмент очереди. Другие типы очередей могут использовать другие правила размещения. Каждая Queue реализация должна указывать свои свойства упорядочения.

Метод #offer offer вставляет элемент, если это возможно, в противном случае возвращает false. Это отличается от java.util.Collection#add Collection.add метода , который может не добавлять элемент только путем создания непроверенного исключения. Метод offer предназначен для использования, когда сбой является нормальным, а не исключительным событием, например в фиксированной емкости (или &кавыка; ограниченный") Очереди.

Методы #remove() и #poll() удаляют и возвращают головку очереди. Именно тот элемент, который удаляется из очереди, является функцией политики упорядочения очереди, которая отличается от реализации к реализации. Методы remove() и poll() отличаются только в том случае, если очередь пуста: remove() метод создает исключение, а poll() метод возвращает null.

Методы #element() и #peek() возвращают, но не удаляют голову очереди.

Интерфейс Queue не определяет методы блокировки очереди, которые являются общими для параллельного программирования. Эти методы, которые ожидают появления элементов или появления пространства, определяются в интерфейсе java.util.concurrent.BlockingQueue , который расширяет этот интерфейс.

Queue Реализации обычно не допускают вставку null элементов, хотя некоторые реализации, такие как LinkedList, не запрещают вставку null. Даже в реализациях, которые позволяют это, null не следует вставлять в Queue, так как null также используется в качестве специального возвращаемого значения методом poll , чтобы указать, что очередь не содержит элементов.

Queue Реализации обычно не определяют версии методов equals на основе элементов и hashCode вместо этого наследуют версии на основе удостоверений от класса Object, так как равенство на основе элементов не всегда хорошо определено для очередей с теми же элементами, но различными свойствами упорядочения.

Добавлено в версии 1.5.

Документация по Java для java.util.Queue.

Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом Android и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License.

Свойства

Handle

Возвращает значение JNI базового объекта Android.

(Унаследовано от IJavaObject)
IsEmpty

Возвращает значение , если не Collection содержит элементов.

(Унаследовано от ICollection)
JniIdentityHashCode

Возвращает значение java.lang.System.identityHashCode() для упаковаемого экземпляра.

(Унаследовано от IJavaPeerable)
JniManagedPeerState

Состояние управляемого однорангового узла.

(Унаследовано от IJavaPeerable)
JniPeerMembers

Поддержка доступа к членам и вызова.

(Унаследовано от IJavaPeerable)
PeerReference

Возвращает экземпляр JniObjectReference объекта Java, заключенный в оболочку.

(Унаследовано от IJavaPeerable)

Методы

Add(Object)

Вставляет указанный элемент в эту очередь, если это можно сделать немедленно, не нарушая ограничения емкости, возвращая true при успешном выполнении и вызывая исключение , IllegalStateException если в настоящее время нет свободного места.

AddAll(ICollection)

Добавляет все элементы из указанной коллекции в эту коллекцию (необязательная операция).

(Унаследовано от ICollection)
Clear()

Удаляет все элементы из этой коллекции (необязательная операция).

(Унаследовано от ICollection)
Contains(Object)

Возвращает значение true , если коллекция содержит указанный элемент.

(Унаследовано от ICollection)
ContainsAll(ICollection)

Возвращает значение true , если эта коллекция содержит все элементы в указанной коллекции.

(Унаследовано от ICollection)
Disposed()

Вызывается при удалении экземпляра.

(Унаследовано от IJavaPeerable)
DisposeUnlessReferenced()

Если отсутствуют невыполненные ссылки на этот экземпляр, вызывает метод Dispose(); в противном случае ничего не делает.

(Унаследовано от IJavaPeerable)
Element()

Извлекает, но не удаляет головку этой очереди.

Equals(Object)

Сравнивает указанный объект с этой коллекцией на равенство.

(Унаследовано от ICollection)
Finalized()

Вызывается при завершении работы экземпляра.

(Унаследовано от IJavaPeerable)
ForEach(IConsumer)

Выполняет заданное действие для каждого элемента до Iterable тех пор, пока не будут обработаны все элементы или действие не вызовет исключение.

(Унаследовано от IIterable)
GetHashCode()

Возвращает значение хэш-кода для этой коллекции.

(Унаследовано от ICollection)
Iterator()

Возвращает итератор по элементам в этой коллекции.

(Унаследовано от ICollection)
Offer(Object)

Вставляет указанный элемент в эту очередь, если это можно сделать немедленно без нарушения ограничений емкости.

Peek()

Извлекает, но не удаляет головку этой очереди или возвращает null значение , если эта очередь пуста.

Poll()

Извлекает и удаляет головку этой очереди или возвращает null значение , если эта очередь пуста.

Remove()

Извлекает и удаляет головку этой очереди.

Remove(Object)

Удаляет один экземпляр указанного элемента из этой коллекции, если он присутствует (необязательная операция).

(Унаследовано от ICollection)
RemoveAll(ICollection)

Удаляет все элементы этой коллекции, которые также содержатся в указанной коллекции (необязательная операция).

(Унаследовано от ICollection)
RemoveIf(IPredicate)

Удаляет все элементы этой коллекции, удовлетворяющие заданному предикату.

(Унаследовано от ICollection)
RetainAll(ICollection)

Сохраняет только элементы в этой коллекции, содержащиеся в указанной коллекции (необязательная операция).

(Унаследовано от ICollection)
SetJniIdentityHashCode(Int32)

Задайте значение, возвращаемое .JniIdentityHashCode

(Унаследовано от IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Коллекция, предназначенная для хранения элементов перед обработкой.

(Унаследовано от IJavaPeerable)
SetPeerReference(JniObjectReference)

Задайте значение, возвращаемое .PeerReference

(Унаследовано от IJavaPeerable)
Size()

Возвращает количество элементов в этой коллекции.

(Унаследовано от ICollection)
Spliterator()

Создает над Spliterator элементами, описанными в данном Iterableобъекте .

(Унаследовано от IIterable)
ToArray()

Возвращает массив, содержащий все элементы в этой коллекции.

(Унаследовано от ICollection)
ToArray(IIntFunction)

Возвращает массив, содержащий все элементы в этой коллекции, используя предоставленную generator функцию для выделения возвращаемого массива.

(Унаследовано от ICollection)
ToArray(Object[])

Возвращает массив, содержащий все элементы в этой коллекции; тип среды выполнения возвращаемого массива равен типу указанного массива.

(Унаследовано от ICollection)
UnregisterFromRuntime()

Отмените регистрацию этого экземпляра, чтобы среда выполнения не возвращала его из будущих Java.Interop.JniRuntime+JniValueManager.PeekValue вызовов.

(Унаследовано от IJavaPeerable)

Явные реализации интерфейса

IIterable.Spliterator()

Создает над Spliterator элементами в этой коллекции.

(Унаследовано от ICollection)

Методы расширения

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверенного средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Коллекция, предназначенная для хранения элементов перед обработкой.

GetJniTypeName(IJavaPeerable)

Коллекция, предназначенная для хранения элементов перед обработкой.

ToEnumerable(IIterable)

Коллекция, предназначенная для хранения элементов перед обработкой.

ToEnumerable<T>(IIterable)

Коллекция, предназначенная для хранения элементов перед обработкой.

Применяется к