Spec-Zone.ru › OpenJDK 24

Класс ConcurrentLinkedDeque<E>

java.lang.Object
java.util.AbstractCollection<E>
java.util.concurrent.ConcurrentLinkedDeque<E>
Параметры типа:
E - тип элементов, хранящихся в этом очереди с двусторонней очередью
Все реализованные интерфейсы:
Serializable, Iterable<E>, Collection<E>, Deque<E>, Queue<E>, SequencedCollection<E>
public class ConcurrentLinkedDeque<E> extends AbstractCollection<E> implements Deque<E>, Serializable
Бесконечная конкурентная двусторонняя очередь на основе связанных узлов. Конкурентные операции вставки, удаления и доступа выполняются безопасно в нескольких потоках. Класс ConcurrentLinkedDeque является подходящим выбором, когда многие потоки будут совместно использовать доступ к общему набору. Как и большинство других реализаций коллекций для многопоточных приложений, этот класс не допускает использование null элементов.

Итераторы и разделители являются слабо согласованными.

Обратите внимание, что, в отличие от большинства коллекций, метод size НЕ является операцией с постоянной сложностью. Из-за асинхронной природы этих очередей определение текущего количества элементов требует обхода элементов, и поэтому может сообщать неточную информацию, если эта коллекция изменяется во время обхода.

Массовые операции, которые добавляют, удаляют или проверяют несколько элементов, такие как addAll(java.util.Collection<? extends E>), removeIf(java.util.function.Predicate<? super E>) или forEach(java.util.function.Consumer<? super E>), не гарантируют атомарное выполнение. Например, обход forEach, конкурирующий с операцией addAll, может наблюдать только некоторые добавленные элементы.

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

Эффекты согласованности памяти: Как и в других конкурентных коллекциях, действия в потоке перед размещением объекта в ConcurrentLinkedDeque предшествуют действиям, последующим за доступом или удалением этого элемента из ConcurrentLinkedDeque в другом потоке.

Этот класс является членом Java Collections Framework.

С:
1.7
См. также:
  • Сериализованная форма

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

Конструктор Описание
ConcurrentLinkedDeque()
Создаёт пустой deque.
ConcurrentLinkedDeque(Collection<? extends E> c)
Создаёт deque, содержащий элементы заданного набора, добавленные в порядке обхода итератора набора.

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

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

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

containsAll, toString

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

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

containsAll, equals, hashCode, parallelStream, stream, toArray

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

reversed

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

ConcurrentLinkedDeque

public ConcurrentLinkedDeque()
Создаёт пустую очередь.

ConcurrentLinkedDeque

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

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

addFirst

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

addLast

public void addLast(E e)
Вставляет указанный элемент в конец этой очереди. Поскольку очередь не ограничена, этот метод никогда не выбросит IllegalStateException.

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

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

offerFirst

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

offerLast

public boolean offerLast(E e)
Вставляет указанный элемент в конец этой очереди. Поскольку очередь не ограничена, этот метод никогда не вернёт false.

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

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

peekFirst

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

peekLast

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

pollFirst

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

pollLast

public E pollLast()
Описание скопировано из интерфейса: Deque
Возвращает и удаляет последний элемент этой очереди или возвращает null, если эта очередь пуста.
Определено в:
pollLast в интерфейсе Deque<E>
Возвращает:
хвост этой очереди или 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 - если эта очередь пуста

offer

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

add

public boolean add(E e)
Вставляет указанный элемент в конец этого очереди с двойным концом. Поскольку очередь с двойным концом неограничена, этот метод никогда не выбросит IllegalStateException или вернёт false.
Specified by:
add in interface Collection<E>
Specified by:
add in interface Deque<E>
Specified by:
add in interface Queue<E>
Overrides:
add in class AbstractCollection<E>
Parameters:
e - элемент, присутствие которого в этом наборе нужно гарантировать
Returns:
true (как указано в Collection.add(E))
Throws:
NullPointerException - если указанный элемент имеет значение null

poll

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

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

Specified by:
poll in interface Deque<E>
Specified by:
poll in interface Queue<E>
Returns:
первый элемент этого очереди с двойным концом или null, если эта очередь с двойным концом пуста

peek

public E peek()
Описание скопировано из интерфейса: Deque
Извлекает, но не удаляет, голову очереди, представленной этим очереди с двойным концом (иначе говоря, первый элемент этой очереди с двойным концом), или возвращает null, если эта очередь с двойным концом пуста.

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

Specified by:
peek in interface Deque<E>
Specified by:
peek in interface Queue<E>
Returns:
голова очереди, представленная этим очереди с двойным концом, или null, если эта очередь с двойным концом пуста

remove

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

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

Specified by:
remove in interface Deque<E>
Specified by:
remove in interface Queue<E>
Returns:
голова очереди, представленной этим очереди с двойным концом
Throws:
NoSuchElementException - если эта очередь с двойным концом пуста

pop

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

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

Specified by:
pop in interface Deque<E>
Returns:
элемент в начале этого очереди с двойным концом (который является вершиной стека, представленного этим очереди с двойным концом)
Throws:
NoSuchElementException - если эта очередь с двойным концом пуста

element

public E element()
Описание скопировано из интерфейса: Deque
Извлекает, но не удаляет, голову очереди, представленной этим очереди с двойным концом (иначе говоря, первый элемент этой очереди с двойным концом). Этот метод отличается от peek только тем, что он генерирует исключение, если эта очередь с двойным концом пуста.

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

Specified by:
element in interface Deque<E>
Specified by:
element in interface Queue<E>
Returns:
голова очереди, представленная этим очереди с двойным концом
Throws:
NoSuchElementException - если эта очередь с двойным концом пуста

push

public void push(E e)
Описание скопировано из интерфейса: Deque
Помещает элемент в стек, представленный этим очереди с двойным концом (иначе говоря, в начало этого очереди с двойным концом), если это возможно сделать немедленно, не нарушая ограничений на ёмкость, выбросив исключение IllegalStateException, если свободно места нет.

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

Specified by:
push in interface Deque<E>
Parameters:
e - элемент для помещения в стек
Throws:
NullPointerException - если указанный элемент имеет значение null, и эта очередь с двойным концом не допускает null-элементы

removeFirstOccurrence

public boolean removeFirstOccurrence(Object o)
Удаляет первое вхождение указанного элемента из этого очереди с двойным концом. Если в очереди с двойным концом элемент отсутствует, она не изменяется. Более формально, удаляет первый элемент e такой, что o.equals(e) (если такой элемент существует). Возвращает true, если эта очередь с двойным концом содержала указанный элемент (или, что эквивалентно, если эта очередь с двойным концом изменилась в результате вызова).
Specified by:
removeFirstOccurrence in interface Deque<E>
Parameters:
o - элемент, который необходимо удалить из этой очереди с двойным концом, если он присутствует
Returns:
true, если очередь с двойным концом содержала указанный элемент
Throws:
NullPointerException - если указанный элемент имеет значение null

removeLastOccurrence

public boolean removeLastOccurrence(Object o)
Удаляет последнее вхождение указанного элемента из этой очереди с двойным концом. Если в очереди с двойным концом элемент отсутствует, она не изменяется. Более формально, удаляет последний элемент e такой, что o.equals(e) (если такой элемент существует). Возвращает true, если эта очередь с двойным концом содержала указанный элемент (или, что эквивалентно, если эта очередь с двойным концом изменилась в результате вызова).
Specified by:
removeLastOccurrence in interface Deque<E>
Parameters:
o - элемент, который необходимо удалить из этой очереди с двойным концом, если он присутствует
Returns:
true, если очередь с двойным концом содержала указанный элемент
Throws:
NullPointerException - если указанный элемент имеет значение null

contains

public boolean contains(Object o)
Возвращает true, если эта очередь с двойным концом содержит указанный элемент. Более формально, возвращает true, если и только если эта очередь с двойным концом содержит по крайней мере один элемент e такой, что o.equals(e).
Specified by:
contains in interface Collection<E>
Specified by:
contains in interface Deque<E>
Overrides:
contains in class AbstractCollection<E>
Parameters:
o - элемент, присутствие которого в этой очереди с двойным концом нужно проверить
Returns:
true, если эта очередь с двойным концом содержит указанный элемент

isEmpty

public boolean isEmpty()
Возвращает true, если этот набор не содержит элементов.
Specified by:
isEmpty in interface Collection<E>
Overrides:
isEmpty in class AbstractCollection<E>
Returns:
true, если этот набор не содержит элементов

size

public int size()
Возвращает количество элементов в этом очереди с двойным концом. Если в этой очереди с двойным концом содержится более Integer.MAX_VALUE элементов, она возвращает Integer.MAX_VALUE.

Обратите внимание, что, в отличие от большинства наборов, этот метод НЕ является операцией с постоянной сложностью. Из-за асинхронного характера этих очередей с двойным концом определение текущего количества элементов требует обхода всех элементов, чтобы посчитать их. Кроме того, возможно, что размер изменится во время выполнения этого метода, в этом случае возвращённый результат будет неточен. Таким образом, этот метод обычно не очень полезен в приложениях с конкурентным выполнением.

Specified by:
size in interface Collection<E>
Specified by:
size in interface Deque<E>
Returns:
количество элементов в этом очереди с двойным концом

удалить

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

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

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

addAll

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

очистить

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

toArray

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

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

Этот метод действует как мост между основанными на массиве и основанными на коллекции API.

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

toArray

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

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

Как и метод toArray(), этот метод служит мостом между основанными на массиве и основанными на коллекции 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

iterator

public Iterator<E> iterator()
Возвращает итератор по элементам в этой очереди в правильной последовательности. Элементы будут возвращаться в порядке от первого (головы) к последнему (хвосту).

Возвращаемый итератор слабо согласован.

Указано:
iterator в интерфейсе Collection<E>
Указано:
iterator в интерфейсе Deque<E>
Указано:
iterator в интерфейсе Iterable<E>
Указано:
iterator в классе AbstractCollection<E>
Возвращает:
итератор по элементам в этой очереди в правильной последовательности

descendingIterator

public Iterator<E> descendingIterator()
Возвращает итератор по элементам в этой очереди в обратном порядке. Элементы будут возвращаться в порядке от последнего (хвоста) к первому (голове).

Возвращаемый итератор слабо согласован.

Указано:
descendingIterator в интерфейсе Deque<E>
Возвращает:
итератор по элементам в этой очереди в обратном порядке

spliterator

public Spliterator<E> spliterator()
Возвращает Spliterator по элементам в этой очереди.

Возвращаемый разделитель слабо согласован.

Spliterator сообщает Spliterator.CONCURRENT, Spliterator.ORDERED и Spliterator.NONNULL.

Указано:
spliterator в интерфейсе Collection<E>
Указано:
spliterator в интерфейсе Iterable<E>
Примечание реализации:
Spliterator реализует trySplit, чтобы разрешить ограниченное параллельное выполнение.
Возвращает:
Spliterator по элементам в этой очереди
С:
1.8

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
См. также:
  • AbstractCollection.remove(Object)
  • AbstractCollection.contains(Object)

retainAll

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

forEach

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

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

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

© 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/util/concurrent/ConcurrentLinkedDeque.html

Spec-Zone.ru

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