|
Spec-Zone .ru
спецификации, руководства, описания, API
|
Queue реализации группируются в и параллельные реализации общего назначения.
Как упомянуто в предыдущем разделе, LinkedList реализации Queue интерфейс, обеспечивая сначала в, сначала (FIFO) работы с очередями для add, poll, и так далее.
PriorityQueue class является приоритетной очередью, основанной на структуре данных "кучи". Эта очередь упорядочивает элементы согласно порядку, определенному во время создания, которое может быть естественным упорядочиванием элементов или упорядочиванием, наложенным явным Comparator.
Операции извлечения очереди — poll, remove, peek, и element — получите доступ к элементу во главе очереди. Глава очереди является наименьшим количеством элемента относительно указанного упорядочивания. Если многократные элементы связываются для наименьшего количества значения, голова является одним из тех элементов; связи повреждаются произвольно.
PriorityQueue и его iterator реализуют все дополнительные методы Collection и Iterator интерфейсы. iterator обеспечил в методе iterator как гарантируют, не пересечет элементы PriorityQueue в любом определенном порядке. Для упорядоченного обхода рассмотреть использование Arrays.sort(pq.toArray()).
java.util.concurrent пакет содержит ряд синхронизируемого Queue интерфейсы и классы. расширяется Queue с операциями, которые ожидают очереди, чтобы стать непустыми, получая элемент и для пространства, чтобы стать доступными в очереди, храня элемент. Этот интерфейс реализуется следующими классами:
BlockingQueue интерфейсВ JDK 7, специализированное BlockingQueue в который код, который добавляет, что у элемента очереди есть опция ожидания (блокирование) для кода в другом потоке, чтобы получить элемент. TransferQueue имеет единственную реализацию:
TransferQueue основанный на соединенных узлах