Spec-Zone.ru › OpenJDK 17

Класс ConcurrentLinkedDeque<E>

java.lang.Object
java.util.AbstractCollection<E>
java.util.concurrent.ConcurrentLinkedDeque<E>
Type Parameters:
E - тип элементов, хранимых в этой очереди
Все реализованные интерфейсы:
Serializable, Iterable<E>, Collection<E>, Deque<E>, Queue<E>
public class ConcurrentLinkedDeque<E> extends AbstractCollection<E> implements Deque<E>, Serializable
Неограниченная конкурентная очередь очереди на основе связанных узлов. Конкурентные операции вставки, удаления и доступа выполняются безопасно в нескольких потоках. Очередь является подходящим выбором, когда много потоков будут совместно использовать доступ к общей коллекции. Как и большинство других реализаций конкурентных коллекций, этот класс не допускает использование 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.

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

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

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

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

Модификатор и тип Метод Описание
boolean add(E e)
Вставляет указанный элемент в конец этой очереди с двумя концами.
boolean addAll(Collection<? extends E> c)
Добавляет все элементы из заданного набора в конец этой очереди с двумя концами в порядке, в котором они возвращаются итератором заданного набора.
void addFirst(E e)
Вставляет указанный элемент в начало этой очереди с двумя концами.
void addLast(E e)
Вставляет указанный элемент в конец этой очереди с двумя концами.
void clear()
Удаляет все элементы из этой очереди с двумя концами.
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)
Добавляет элемент в стек, представленный этой очередью с двумя концами (то есть, в начало этой очереди с двумя концами), если это возможно сделать немедленно без нарушения ограничений по емкости, вызывая IllegalStateException если места в данный момент нет.
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)
Возвращает массив, содержащий все элементы этой очереди с двумя концами в правильной последовательности (от первого к последнему элементу); тип времени выполнения возвращаемого массива - тип заданного массива.

Методы, объявленные в классе 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

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

ConcurrentLinkedDeque

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

ConcurrentLinkedDeque

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

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

addFirst

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

addLast

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

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

Определено в:
addLast в интерфейсе Deque<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>
Возвращает:
начало этой очереди
Исключения:
NoSuchElementException - если эта очередь пуста

getLast

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

removeLast

public E removeLast()
Описание скопировано из интерфейса: Deque
Извлекает и удаляет последний элемент этой очереди. Этот метод отличается от pollLast только тем, что выбрасывает исключение, если эта очередь пуста.
Определено в:
removeLast в интерфейсе Deque<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.
Определено в:
add в интерфейсе Collection<E>
Определено в:
add в интерфейсе Deque<E>
Определено в:
add в интерфейсе Queue<E>
Переопределяет:
add в классе AbstractCollection<E>
Параметры:
e - элемент, присутствие которого в этом наборе должно быть гарантировано
Возвращает:
true (как указано в Collection.add(E))
Исключения:
NullPointerException - если указанный элемент равен null

poll

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

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

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

peek

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

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

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

remove

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

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

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

pop

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

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

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

element

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

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

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

push

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

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

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

removeFirstOccurrence

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

removeLastOccurrence

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

contains

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

isEmpty

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

size

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

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

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

remove

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

итератор

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-элементов, а указанная коллекция не поддерживает 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)

forEach

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

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

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

© 1993, 2021, 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://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/concurrent/ConcurrentLinkedDeque.html

Spec-Zone.ru

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