Spec-Zone.ru › OpenJDK 27

Класс ArrayDeque<E>

java.lang.Object
java.util.AbstractCollection<E>
java.util.ArrayDeque<E>
Параметры типа:
E — тип элементов, хранящихся в этой двусторонней очереди
Все реализуемые интерфейсы:
Serializable, Cloneable, Iterable<E>, Collection<E>, Deque<E>, Queue<E>, SequencedCollection<E>
public class ArrayDeque<E> extends AbstractCollection<E> implements Deque<E>, Cloneable, Serializable
Реализация интерфейса Deque на основе массива с динамически изменяемым размером. Двусторонние очереди на основе массива не имеют ограничений по емкости; при необходимости они увеличиваются. Они не являются потокобезопасными; без внешней синхронизации они не поддерживают одновременный доступ из нескольких потоков. Элементы со значением null запрещены. Этот класс, вероятно, работает быстрее, чем Stack при использовании в качестве стека, и быстрее, чем LinkedList при использовании в качестве очереди.

Большинство операций ArrayDeque выполняются за амортизированное постоянное время. Исключения составляют remove, removeFirstOccurrence, removeLastOccurrence, contains, iterator.remove() и пакетные операции: все они выполняются за линейное время.

Итераторы, возвращаемые методом iterator этого класса, являются быстроотказывающими: если после создания итератора двусторонняя очередь каким-либо образом изменяется, кроме как с помощью собственного метода remove итератора, итератор, как правило, выбрасывает исключение ConcurrentModificationException. Таким образом, при одновременном изменении итератор быстро и корректно отказывает, вместо того чтобы допустить произвольное, недетерминированное поведение в неопределенный момент в будущем.

Обратите внимание, что гарантировать быстроотказывающее поведение итератора нельзя, поскольку, вообще говоря, невозможно дать какие-либо строгие гарантии при несинхронизированном одновременном изменении. Быстроотказывающие итераторы выбрасывают ConcurrentModificationException по возможности. Поэтому было бы неправильно писать программу, корректность которой зависит от этого исключения: быстроотказывающее поведение итераторов следует использовать только для обнаружения ошибок.

Этот класс и его итератор реализуют все необязательные методы интерфейсов Collection, SequencedCollection и Iterator.

Этот класс является частью Java Collections Framework.

Начиная с:
1.6
См. также:
  • Сериализованная форма

Краткое описание конструкторов

Конструктор Описание
ArrayDeque()
Создает пустую двустороннюю очередь на основе массива с начальной емкостью, достаточной для хранения 16 элементов.
ArrayDeque(int numElements)
Создает пустую двустороннюю очередь на основе массива с начальной емкостью, достаточной для хранения указанного числа элементов.
ArrayDeque(Collection<? extends E> c)
Создает двустороннюю очередь, содержащую элементы указанной коллекции в том порядке, в котором их возвращает итератор коллекции.

Краткое описание методов

Модификатор и тип Метод Описание
boolean add(E e)
Вставляет указанный элемент в конец этой двусторонней очереди.
boolean addAll(Collection<? extends E> c)
Добавляет все элементы указанной коллекции в конец этой двусторонней очереди, как если бы для каждого из них в порядке, в котором их возвращает итератор коллекции, был вызван метод addLast(E).
void addFirst(E e)
Вставляет указанный элемент в начало этой двусторонней очереди.
void addLast(E e)
Вставляет указанный элемент в конец этой двусторонней очереди.
void clear()
Удаляет все элементы из этой двусторонней очереди.
ArrayDeque<E> clone()
Возвращает копию этой двусторонней очереди.
boolean contains(Object o)
Возвращает true, если эта двусторонняя очередь содержит указанный элемент.
Iterator<E> descendingIterator()
Возвращает итератор элементов этой двусторонней очереди в обратном последовательном порядке.
E element()
Извлекает, но не удаляет начало очереди, представленной этой двусторонней очередью.
void forEach(Consumer<? super E> action)
Выполняет указанное действие для каждого элемента Iterable, пока не будут обработаны все элементы или действие не выбросит исключение.
E getFirst()
Извлекает, но не удаляет первый элемент этой двусторонней очереди.
E getLast()
Извлекает, но не удаляет последний элемент этой двусторонней очереди.
boolean isEmpty()
Возвращает true, если эта двусторонняя очередь не содержит элементов.
Iterator<E> iterator()
Возвращает итератор элементов этой двусторонней очереди.
boolean offer(E e)
Вставляет указанный элемент в конец этой двусторонней очереди.
boolean offerFirst(E e)
Вставляет указанный элемент в начало этой двусторонней очереди.
boolean offerLast(E e)
Вставляет указанный элемент в конец этой двусторонней очереди.
E peek()
Извлекает, но не удаляет начало очереди, представленной этой двусторонней очередью, или возвращает null, если эта двусторонняя очередь пуста.
E peekFirst()
Извлекает, но не удаляет первый элемент этой двусторонней очереди или возвращает null, если эта двусторонняя очередь пуста.
E peekLast()
Извлекает, но не удаляет последний элемент этой двусторонней очереди или возвращает null, если эта двусторонняя очередь пуста.
E poll()
Извлекает и удаляет начало очереди, представленной этой двусторонней очередью (то есть первый элемент этой двусторонней очереди), или возвращает null, если эта двусторонняя очередь пуста.
E pollFirst()
Извлекает и удаляет первый элемент этой двусторонней очереди или возвращает null, если эта двусторонняя очередь пуста.
E pollLast()
Извлекает и удаляет последний элемент этой двусторонней очереди или возвращает null, если эта двусторонняя очередь пуста.
E pop()
Извлекает элемент из стека, представленного этой двусторонней очередью.
void push(E e)
Помещает элемент в стек, представленный этой двусторонней очередью.
E remove()
Извлекает и удаляет начало очереди, представленной этой двусторонней очередью.
boolean remove(Object o)
Удаляет одно вхождение указанного элемента из этой двусторонней очереди.
boolean removeAll(Collection<?> c)
Удаляет из этой коллекции все элементы, которые также содержатся в указанной коллекции (необязательная операция).
E removeFirst()
Извлекает и удаляет первый элемент этой двусторонней очереди.
boolean removeFirstOccurrence(Object o)
Удаляет первое вхождение указанного элемента в этой двусторонней очереди (при обходе от начала к концу).
boolean removeIf(Predicate<? super E> filter)
Удаляет все элементы этой коллекции, удовлетворяющие заданному предикату (необязательная операция).
E removeLast()
Извлекает и удаляет последний элемент этой двусторонней очереди.
boolean removeLastOccurrence(Object o)
Удаляет последнее вхождение указанного элемента в этой двусторонней очереди (при обходе от начала к концу).
boolean retainAll(Collection<?> c)
Оставляет в этой коллекции только элементы, содержащиеся в указанной коллекции (необязательная операция).
int size()
Возвращает число элементов в этой двусторонней очереди.
Spliterator<E> spliterator()
Создает привязываемый с задержкой и быстроотказывающий Spliterator для элементов этой двусторонней очереди.
Object[] toArray()
Возвращает массив, содержащий все элементы этой двусторонней очереди в правильном порядке (от первого элемента к последнему).
<T> T[] toArray(T[] a)
Возвращает массив, содержащий все элементы этой двусторонней очереди в правильном порядке (от первого элемента к последнему); тип времени выполнения возвращаемого массива совпадает с типом указанного массива.

Методы, объявленные в классе AbstractCollection

containsAll, toString
Модификатор и тип Метод Описание
boolean containsAll(Collection<?> c)
Возвращает true, если эта коллекция содержит все элементы указанной коллекции.
String toString()
Возвращает строковое представление этой коллекции.

Методы, объявленные в классе Object

equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Модификатор и тип Метод Описание
boolean equals(Object obj)
Указывает, является ли другой объект «равным» этому объекту.
protected void finalize()
Устарело, планируется удаление: этот элемент API может быть удален в будущей версии.
Финализация объявлена устаревшей и может быть удалена в одном из следующих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает значение хеш-кода этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания, либо истечения заданного периода реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания, либо истечения заданного периода реального времени.

Методы, объявленные в интерфейсе Collection

equals, hashCode, parallelStream, stream, toArray
Модификатор и тип Метод Описание
boolean equals(Object o)
Сравнивает указанный объект с этой коллекцией на равенство.
int hashCode()
Возвращает значение хеш-кода этой коллекции.
default Stream<E> parallelStream()
Возвращает возможно параллельный Stream, источником которого является эта коллекция.
default Stream<E> stream()
Возвращает последовательный Stream, источником которого является эта коллекция.
default <T> T[] toArray(IntFunction<T[]> generator)
Возвращает массив, содержащий все элементы этой коллекции; для выделения возвращаемого массива используется предоставленная функция generator.

Методы, объявленные в интерфейсе Deque

reversed
Модификатор и тип Метод Описание
default Deque<E> reversed()
Возвращает представление этой коллекции в обратном порядке.

Подробное описание конструкторов

ArrayDeque

public ArrayDeque()
Создает пустую деку на массиве с начальной емкостью, достаточной для хранения 16 элементов.

ArrayDeque

public ArrayDeque(int numElements)
Создает пустую деку на массиве с начальной емкостью, достаточной для хранения указанного числа элементов.
Параметры:
numElements — нижняя граница начальной емкости деки

ArrayDeque

public ArrayDeque(Collection<? extends E> c)
Создает деку, содержащую элементы указанной коллекции в порядке, в котором их возвращает итератор коллекции. (Первый элемент, возвращенный итератором коллекции, становится первым элементом, или началом деки.)
Параметры:
c — коллекция, элементы которой должны быть помещены в деку
Исключения:
NullPointerException — если указанная коллекция равна null

Подробное описание методов

addFirst

public void addFirst(E e)
Вставляет указанный элемент в начало этой деки.
Определен в:
addFirst в интерфейсе Deque<E>
Определен в:
addFirst в интерфейсе SequencedCollection<E>
Параметры:
e — добавляемый элемент
Исключения:
NullPointerException — если указанный элемент равен null

addLast

public void addLast(E e)
Вставляет указанный элемент в конец этой деки.

Этот метод эквивалентен add(E).

Определен в:
addLast в интерфейсе Deque<E>
Определен в:
addLast в интерфейсе SequencedCollection<E>
Параметры:
e — добавляемый элемент
Исключения:
NullPointerException — если указанный элемент равен null

addAll

public boolean addAll(Collection<? extends E> c)
Добавляет все элементы указанной коллекции в конец этой деки, как если бы для каждого из них в порядке, в котором их возвращает итератор коллекции, вызывался метод addLast(E).
Определен в:
addAll в интерфейсе Collection<E>
Определен в:
addAll в интерфейсе Deque<E>
Переопределяет:
addAll в классе AbstractCollection<E>
Параметры:
c — элементы, которые нужно вставить в эту деку
Возвращает:
true, если эта дека изменилась в результате вызова
Исключения:
NullPointerException — если указанная коллекция или любой из ее элементов равны null
См. также:
  • AbstractCollection.add(Object)

offerFirst

public boolean offerFirst(E e)
Вставляет указанный элемент в начало этой деки.
Определен в:
offerFirst в интерфейсе Deque<E>
Параметры:
e — добавляемый элемент
Возвращает:
true (как указано в Deque.offerFirst(E))
Исключения:
NullPointerException — если указанный элемент равен null

offerLast

public boolean offerLast(E e)
Вставляет указанный элемент в конец этой деки.
Определен в:
offerLast в интерфейсе Deque<E>
Параметры:
e — добавляемый элемент
Возвращает:
true (как указано в Deque.offerLast(E))
Исключения:
NullPointerException — если указанный элемент равен null

removeFirst

public E removeFirst()
Описание скопировано из интерфейса: Deque
Извлекает и удаляет первый элемент этой деки. Этот метод отличается от pollFirst только тем, что выбрасывает исключение, если дека пуста.
Определен в:
removeFirst в интерфейсе Deque<E>
Определен в:
removeFirst в интерфейсе SequencedCollection<E>
Возвращает:
первый элемент этой деки
Исключения:
NoSuchElementException — если дека пуста

removeLast

public E removeLast()
Описание скопировано из интерфейса: Deque
Извлекает и удаляет последний элемент этой деки. Этот метод отличается от pollLast только тем, что выбрасывает исключение, если дека пуста.
Определен в:
removeLast в интерфейсе Deque<E>
Определен в:
removeLast в интерфейсе SequencedCollection<E>
Возвращает:
последний элемент этой деки
Исключения:
NoSuchElementException — если дека пуста

pollFirst

public E pollFirst()
Описание скопировано из интерфейса: Deque
Извлекает и удаляет первый элемент этой деки или возвращает null, если дека пуста.
Определен в:
pollFirst в интерфейсе Deque<E>
Возвращает:
первый элемент этой деки или null, если дека пуста

pollLast

public E pollLast()
Описание скопировано из интерфейса: Deque
Извлекает и удаляет последний элемент этой деки или возвращает null, если дека пуста.
Определен в:
pollLast в интерфейсе Deque<E>
Возвращает:
последний элемент этой деки или null, если дека пуста

getFirst

public E getFirst()
Описание скопировано из интерфейса: Deque
Получает, но не удаляет первый элемент этой деки. Этот метод отличается от peekFirst только тем, что выбрасывает исключение, если дека пуста.
Определен в:
getFirst в интерфейсе Deque<E>
Определен в:
getFirst в интерфейсе SequencedCollection<E>
Возвращает:
первый элемент этой деки
Исключения:
NoSuchElementException — если дека пуста

getLast

public E getLast()
Описание скопировано из интерфейса: Deque
Получает, но не удаляет последний элемент этой деки. Этот метод отличается от peekLast только тем, что выбрасывает исключение, если дека пуста.
Определен в:
getLast в интерфейсе Deque<E>
Определен в:
getLast в интерфейсе SequencedCollection<E>
Возвращает:
последний элемент этой деки
Исключения:
NoSuchElementException — если дека пуста

peekFirst

public E peekFirst()
Описание скопировано из интерфейса: Deque
Получает, но не удаляет первый элемент этой деки или возвращает null, если дека пуста.
Определен в:
peekFirst в интерфейсе Deque<E>
Возвращает:
первый элемент этой деки или null, если дека пуста

peekLast

public E peekLast()
Описание скопировано из интерфейса: Deque
Получает, но не удаляет последний элемент этой деки или возвращает null, если дека пуста.
Определен в:
peekLast в интерфейсе Deque<E>
Возвращает:
последний элемент этой деки или null, если дека пуста

removeFirstOccurrence

public boolean removeFirstOccurrence(Object o)
Удаляет первое вхождение указанного элемента в этой деке (при обходе деки от начала к концу). Если дека не содержит этот элемент, она остается без изменений. Более формально, удаляет первый элемент e, такой что o.equals(e) (если такой элемент существует). Возвращает true, если эта дека содержала указанный элемент (или, что эквивалентно, если дека изменилась в результате вызова).
Определен в:
removeFirstOccurrence в интерфейсе Deque<E>
Параметры:
o — элемент, который нужно удалить из этой деки, если он присутствует
Возвращает:
true, если дека содержала указанный элемент

removeLastOccurrence

public boolean removeLastOccurrence(Object o)
Удаляет последнее вхождение указанного элемента в этой деке (при обходе деки от начала к концу). Если дека не содержит этот элемент, она остается без изменений. Более формально, удаляет последний элемент e, такой что o.equals(e) (если такой элемент существует). Возвращает true, если эта дека содержала указанный элемент (или, что эквивалентно, если дека изменилась в результате вызова).
Определен в:
removeLastOccurrence в интерфейсе Deque<E>
Параметры:
o — элемент, который нужно удалить из этой деки, если он присутствует
Возвращает:
true, если дека содержала указанный элемент

add

public boolean add(E e)
Вставляет указанный элемент в конец этой деки.

Этот метод эквивалентен addLast(E).

Определен в:
add в интерфейсе Collection<E>
Определен в:
add в интерфейсе Deque<E>
Определен в:
add в интерфейсе Queue<E>
Переопределяет:
add в классе AbstractCollection<E>
Параметры:
e — добавляемый элемент
Возвращает:
true (как указано в Collection.add(E))
Исключения:
NullPointerException — если указанный элемент равен null

offer

public boolean offer(E e)
Вставляет указанный элемент в конец этой деки.

Этот метод эквивалентен offerLast(E).

Определен в:
offer в интерфейсе Deque<E>
Определен в:
offer в интерфейсе Queue<E>
Параметры:
e — добавляемый элемент
Возвращает:
true (как указано в Queue.offer(E))
Исключения:
NullPointerException — если указанный элемент равен null

remove

public E remove()
Извлекает и удаляет первый элемент очереди, представленной этой декой. Этот метод отличается от poll() только тем, что выбрасывает исключение, если дека пуста.

Этот метод эквивалентен removeFirst().

Определен в:
remove в интерфейсе Deque<E>
Определен в:
remove в интерфейсе Queue<E>
Возвращает:
первый элемент очереди, представленной этой декой
Исключения:
NoSuchElementException — если дека пуста

poll

public E poll()
Извлекает и удаляет первый элемент очереди, представленной этой декой (то есть первый элемент этой деки), или возвращает null, если дека пуста.

Этот метод эквивалентен pollFirst().

Определен в:
poll в интерфейсе Deque<E>
Определен в:
poll в интерфейсе Queue<E>
Возвращает:
первый элемент очереди, представленной этой декой, или null, если дека пуста

element

public E element()
Получает, но не удаляет первый элемент очереди, представленной этой декой. Этот метод отличается от peek только тем, что выбрасывает исключение, если дека пуста.

Этот метод эквивалентен getFirst().

Определен в:
element в интерфейсе Deque<E>
Определен в:
element в интерфейсе Queue<E>
Возвращает:
первый элемент очереди, представленной этой декой
Исключения:
NoSuchElementException — если дека пуста

peek

public E peek()
Получает, но не удаляет первый элемент очереди, представленной этой декой, или возвращает null, если дека пуста.

Этот метод эквивалентен peekFirst().

Определен в:
peek в интерфейсе Deque<E>
Определен в:
peek в интерфейсе Queue<E>
Возвращает:
первый элемент очереди, представленной этой декой, или null, если дека пуста

push

public void push(E e)
Помещает элемент в стек, представленный этой декой. Иными словами, вставляет элемент в начало этой деки.

Этот метод эквивалентен addFirst(E).

Определен в:
push в интерфейсе Deque<E>
Параметры:
e — помещаемый в стек элемент
Исключения:
NullPointerException — если указанный элемент равен null

pop

public E pop()
Извлекает элемент из стека, представленного этой декой. Иными словами, удаляет и возвращает первый элемент этой деки.

Этот метод эквивалентен removeFirst().

Определен в:
pop в интерфейсе Deque<E>
Возвращает:
элемент в начале этой деки (который является вершиной стека, представленного этой декой)
Исключения:
NoSuchElementException — если дека пуста

size

public int size()
Возвращает число элементов в этой деке.
Определен в:
size в интерфейсе Collection<E>
Определен в:
size в интерфейсе Deque<E>
Возвращает:
число элементов в этой деке

isEmpty

public boolean isEmpty()
Возвращает true, если эта дека не содержит элементов.
Определен в:
isEmpty в интерфейсе Collection<E>
Переопределяет:
isEmpty в классе AbstractCollection<E>
Возвращает:
true, если эта дека не содержит элементов

iterator

public Iterator<E> iterator()
Возвращает итератор по элементам этой деки. Элементы располагаются в порядке от первого (начала) до последнего (конца). Это тот же порядок, в котором элементы извлекаются из очереди (посредством последовательных вызовов remove()) или из стека (посредством последовательных вызовов pop()).
Определен в:
iterator в интерфейсе Collection<E>
Определен в:
iterator в интерфейсе Deque<E>
Определен в:
iterator в интерфейсе Iterable<E>
Переопределяет:
iterator в классе AbstractCollection<E>
Возвращает:
итератор по элементам этой деки

descendingIterator

public Iterator<E> descendingIterator()
Описание скопировано из интерфейса: Deque
Возвращает итератор по элементам этой деки в обратном порядке. Элементы возвращаются в порядке от последнего (конца) до первого (начала).
Определен в:
descendingIterator в интерфейсе Deque<E>
Возвращает:
итератор по элементам этой деки в обратном порядке

spliterator

public Spliterator<E> spliterator()
Создает поздно связываемый и быстро завершающийся при изменении коллекции Spliterator для элементов этой деки.

Объект Spliterator сообщает о характеристиках Spliterator.SIZED, Spliterator.SUBSIZED, Spliterator.ORDERED и Spliterator.NONNULL. Переопределяющие реализации должны документировать наличие дополнительных характеристик.

Определен в:
spliterator в интерфейсе Collection<E>
Определен в:
spliterator в интерфейсе Iterable<E>
Возвращает:
Spliterator для элементов этой деки
Начиная с:
1.8

forEach

public void forEach(Consumer<? super E> action)
Описание скопировано из интерфейса: Iterable
Выполняет заданное действие для каждого элемента Iterable, пока не будут обработаны все элементы или действие не выбросит исключение. Действия выполняются в порядке итерации, если такой порядок задан. Исключения, выброшенные действием, передаются вызывающему коду.

Поведение этого метода не определено, если действие выполняет побочные эффекты, изменяющие исходную коллекцию элементов, за исключением случаев, когда переопределяющий класс задает политику конкурентного изменения.

Определен в:
forEach в интерфейсе Iterable<E>
Параметры:
action — действие, выполняемое для каждого элемента
Исключения:
NullPointerException — если указанное действие равно null

removeIf

public boolean removeIf(Predicate<? super E> filter)
Описание скопировано из интерфейса: Collection
Удаляет все элементы этой коллекции, удовлетворяющие заданному предикату (необязательная операция). Ошибки или исключения времени выполнения, возникшие при итерации или в предикате, передаются вызывающему коду.
Определен в:
removeIf в интерфейсе Collection<E>
Параметры:
filter — предикат, возвращающий true для элементов, которые нужно удалить
Возвращает:
true, если были удалены какие-либо элементы
Исключения:
NullPointerException — если указанный фильтр равен null

removeAll

public boolean removeAll(Collection<?> c)
Описание скопировано из класса: AbstractCollection
Удаляет из этой коллекции все элементы, которые также содержатся в указанной коллекции (необязательная операция). После возврата из этого вызова у этой коллекции не будет общих элементов с указанной коллекцией.
Определен в:
removeAll в интерфейсе Collection<E>
Переопределяет:
removeAll в классе AbstractCollection<E>
Параметры:
c — коллекция, содержащая элементы, которые нужно удалить из этой коллекции
Возвращает:
true, если эта коллекция изменилась в результате вызова
Исключения:
NullPointerException — если эта коллекция содержит один или несколько элементов null, а указанная коллекция не поддерживает элементы null (необязательно), или если указанная коллекция равна null
См. также:
  • AbstractCollection.remove(Object)
  • AbstractCollection.contains(Object)

retainAll

public boolean retainAll(Collection<?> c)
Описание скопировано из класса: AbstractCollection
Оставляет в этой коллекции только элементы, содержащиеся в указанной коллекции (необязательная операция). Иными словами, удаляет из этой коллекции все элементы, не содержащиеся в указанной коллекции.
Определен в:
retainAll в интерфейсе Collection<E>
Переопределяет:
retainAll в классе AbstractCollection<E>
Параметры:
c — коллекция, содержащая элементы, которые нужно оставить в этой коллекции
Возвращает:
true, если эта коллекция изменилась в результате вызова
Исключения:
NullPointerException — если эта коллекция содержит один или несколько элементов null, а указанная коллекция не допускает элементы null (необязательно), или если указанная коллекция равна null
См. также:
  • AbstractCollection.remove(Object)
  • AbstractCollection.contains(Object)

contains

public boolean contains(Object o)
Возвращает true, если эта дека содержит указанный элемент. Более формально, возвращает true тогда и только тогда, когда эта дека содержит хотя бы один элемент e, такой что o.equals(e).
Определен в:
contains в интерфейсе Collection<E>
Определен в:
contains в интерфейсе Deque<E>
Переопределяет:
contains в классе AbstractCollection<E>
Параметры:
o — объект, наличие которого в этой деке проверяется
Возвращает:
true, если эта дека содержит указанный элемент

remove

public boolean remove(Object o)
Удаляет один экземпляр указанного элемента из этой деки. Если дека не содержит этот элемент, она остается без изменений. Более формально, удаляет первый элемент e, такой что o.equals(e) (если такой элемент существует). Возвращает true, если эта дека содержала указанный элемент (или, что эквивалентно, если дека изменилась в результате вызова).

Этот метод эквивалентен removeFirstOccurrence(Object).

Определен в:
remove в интерфейсе Collection<E>
Определен в:
remove в интерфейсе Deque<E>
Переопределяет:
remove в классе AbstractCollection<E>
Параметры:
o — элемент, который нужно удалить из этой деки, если он присутствует
Возвращает:
true, если эта дека содержала указанный элемент

clear

public void clear()
Удаляет все элементы из этой деки. После возврата из этого вызова дека будет пуста.
Определен в:
clear в интерфейсе Collection<E>
Переопределяет:
clear в классе AbstractCollection<E>

toArray

public Object[] toArray()
Возвращает массив, содержащий все элементы этой двусторонней очереди в правильном порядке (от первого элемента до последнего).

Возвращаемый массив будет «безопасным»: эта двусторонняя очередь не хранит на него ссылок. (Иными словами, этот метод должен выделить новый массив.) Поэтому вызывающий код может свободно изменять возвращённый массив.

Этот метод служит связующим звеном между API на основе массивов и API на основе коллекций.

Определён в:
toArray в интерфейсе Collection<E>
Переопределяет:
toArray в классе AbstractCollection<E>
Возвращает:
массив, содержащий все элементы этой двусторонней очереди

toArray

public <T> T[] toArray(T[] a)
Возвращает массив, содержащий все элементы этой двусторонней очереди в правильном порядке (от первого элемента до последнего); тип возвращённого массива во время выполнения совпадает с типом указанного массива. Если двусторонняя очередь помещается в указанный массив, она возвращается в нём. В противном случае выделяется новый массив с типом указанного массива во время выполнения и размером этой двусторонней очереди.

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

Как и метод toArray(), этот метод служит связующим звеном между API на основе массивов и API на основе коллекций. Кроме того, этот метод позволяет точно управлять типом выходного массива во время выполнения и при определённых обстоятельствах может использоваться для сокращения затрат на выделение памяти.

Предположим, что x — это двусторонняя очередь, содержащая только строки. Следующий код можно использовать для копирования содержимого очереди в новый выделенный массив типа String:

 String[] y = x.toArray(new String[0]);
Обратите внимание, что toArray(new Object[0]) функционально идентичен toArray().
Определён в:
toArray в интерфейсе Collection<E>
Переопределяет:
toArray в классе AbstractCollection<E>
Параметры типа:
T — тип компонентов массива, в котором будет размещена коллекция
Параметры:
a — массив, в котором будут храниться элементы двусторонней очереди, если он достаточно велик; в противном случае для этой цели выделяется новый массив того же типа во время выполнения
Возвращает:
массив, содержащий все элементы этой двусторонней очереди
Вызывает исключения:
ArrayStoreException — если тип указанного массива во время выполнения не является супертипом типа во время выполнения каждого элемента этой двусторонней очереди
NullPointerException — если указанный массив равен null

clone

public ArrayDeque<E> clone()
Возвращает копию этой двусторонней очереди.
Переопределяет:
clone в классе Object
Возвращает:
копию этой двусторонней очереди
См. также:
  • Cloneable

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API