Поделиться через


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">caption Summary of Queue methods</caption>><thead><tr><td/td<>>< th scope="col" style="font-weight:normal; font-style:italic">Throws exception</><th th scope="col" style="font-weight:normal; font-style:italic">Возвращает специальное значение</><th/tr/thead<>tbody<>tr<>>< th scope="row">Insert</th><<td/td></td/td<#offer(Object) offer(e)<>>/tr tr<>th><scope="row">Remove</><th td>#remove() remove()</td/<#poll() poll()><>td/td/<>><tr tr tr><th scope="row">Examine</<>th td<>#element() element()/#peek() peek()<>><<>tr<>/tbody<>/table>#add(Object) add(e)<>

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

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

#poll() Методы #remove() удаляют и возвращают голову очереди. Именно какой элемент удаляется из очереди, является функцией политики упорядочивания очереди, которая отличается от реализации до реализации. Методы poll()remove() отличаются только в их поведении, если очередь пуста: 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.

Свойства

Handle

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

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

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

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

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

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

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

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

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

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

JniObjectReference Возвращает экземпляр объекта Java в оболочке.

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

Методы

Add(Object)

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

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)

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

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