Spec-Zone.ru › OpenJDK 27

Интерфейс SequencedCollection<E>

Параметры типа:
E - тип элементов этой коллекции
Все суперинтерфейсы:
Collection<E>, Iterable<E>
Все известные подинтерфейсы:
BlockingDeque<E>, Deque<E>, List<E>, NavigableSet<E>, SequencedSet<E>, SortedSet<E>
Все известные реализующие классы:
AbstractList, AbstractSequentialList, ArrayDeque, ArrayList, AttributeList, ConcurrentLinkedDeque, ConcurrentSkipListSet, CopyOnWriteArrayList, LinkedBlockingDeque, LinkedHashSet, LinkedList, RoleList, RoleUnresolvedList, Stack, TreeSet, Vector
public interface SequencedCollection<E> extends Collection<E>
Коллекция с чётко определённым порядком обхода, поддерживающая операции с обоими концами и допускающая обращение порядка. Элементы упорядоченной коллекции имеют порядок обхода, то есть концептуально расположены линейно от первого элемента до последнего. Для любых двух элементов один элемент находится либо перед другим (ближе к первому элементу), либо после него (ближе к последнему элементу).

(Обратите внимание, что это определение ничего не подразумевает о физическом расположении элементов, например об их местонахождении в памяти компьютера.)

Некоторые методы, унаследованные от интерфейса Collection, должны работать с элементами в соответствии с порядком обхода этой коллекции. Например, метод iterator возвращает элементы, начиная с первого и последовательно переходя к последующим, вплоть до последнего элемента. К другим методам, которые должны работать с элементами в порядке обхода, относятся: forEach, parallelStream, spliterator, stream и все перегруженные варианты метода toArray.

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

Этот интерфейс также определяет метод reversed, который предоставляет представление этой коллекции в обратном порядке. В представлении с обратным порядком понятия первого и последнего элемента меняются местами, как и понятия следующего и предыдущего элементов. Первый элемент этой коллекции является последним элементом представления с обратным порядком, и наоборот. Следующий элемент для некоторого элемента этой коллекции является предыдущим в представлении с обратным порядком, и наоборот. Все методы, учитывающие порядок обхода коллекции, работают так, как если бы порядок обхода был обратным. Например, метод Collection.iterator() представления с обратным порядком возвращает элементы от последнего элемента этой коллекции до первого. Наличие метода reversed и его влияние на семантику упорядочивания всех применимых методов позволяют удобно перебирать, искать, копировать и обрабатывать потоком элементы этой коллекции как в прямом, так и в обратном порядке.

Этот класс входит в состав Java Collections Framework.

Примечание по API:
Этот интерфейс не предъявляет требований к методам equals и hashCode, поскольку требования, предъявляемые подинтерфейсами List и SequencedSet (который наследует требования от Set), противоречили бы друг другу. Дополнительные сведения см. в спецификациях Collection.equals и Collection.hashCode.
Начиная с версии:
21

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

Модификатор и тип Метод Описание
default void addFirst(E e)
Добавляет элемент в начало этой коллекции (необязательная операция).
default void addLast(E e)
Добавляет элемент в конец этой коллекции (необязательная операция).
default E getFirst()
Возвращает первый элемент этой коллекции.
default E getLast()
Возвращает последний элемент этой коллекции.
default E removeFirst()
Удаляет и возвращает первый элемент этой коллекции (необязательная операция).
default E removeLast()
Удаляет и возвращает последний элемент этой коллекции (необязательная операция).
SequencedCollection<E> reversed()
Возвращает представление этой коллекции в обратном порядке.

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

add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, parallelStream, remove, removeAll, removeIf, retainAll, size, spliterator, stream, toArray, toArray, toArray
Модификатор и тип Метод Описание
boolean add(E e)
Гарантирует, что эта коллекция содержит указанный элемент (необязательная операция).
boolean addAll(Collection<? extends E> c)
Добавляет все элементы указанной коллекции в эту коллекцию (необязательная операция).
void clear()
Удаляет все элементы из этой коллекции (необязательная операция).
boolean contains(Object o)
Возвращает true, если эта коллекция содержит указанный элемент.
boolean containsAll(Collection<?> c)
Возвращает true, если эта коллекция содержит все элементы указанной коллекции.
boolean equals(Object o)
Сравнивает указанный объект с этой коллекцией на равенство.
int hashCode()
Возвращает хеш-код этой коллекции.
boolean isEmpty()
Возвращает true, если эта коллекция не содержит элементов.
Iterator<E> iterator()
Возвращает итератор по элементам этой коллекции.
default Stream<E> parallelStream()
Возвращает, возможно, параллельный Stream, источником которого является эта коллекция.
boolean remove(Object o)
Удаляет один экземпляр указанного элемента из этой коллекции, если он присутствует (необязательная операция).
boolean removeAll(Collection<?> c)
Удаляет из этой коллекции все элементы, которые также содержатся в указанной коллекции (необязательная операция).
default boolean removeIf(Predicate<? super E> filter)
Удаляет все элементы этой коллекции, удовлетворяющие заданному предикату (необязательная операция).
boolean retainAll(Collection<?> c)
Оставляет только те элементы этой коллекции, которые содержатся в указанной коллекции (необязательная операция).
int size()
Возвращает количество элементов в этой коллекции.
default Spliterator<E> spliterator()
Создает Spliterator для элементов этой коллекции.
default Stream<E> stream()
Возвращает последовательный Stream, источником которого является эта коллекция.
Object[] toArray()
Возвращает массив, содержащий все элементы этой коллекции.
default <T> T[] toArray(IntFunction<T[]> generator)
Возвращает массив, содержащий все элементы этой коллекции; для выделения памяти под возвращаемый массив используется функция generator.
<T> T[] toArray(T[] a)
Возвращает массив, содержащий все элементы этой коллекции; тип массива во время выполнения соответствует типу указанного массива.

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

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

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

reversed

SequencedCollection<E> reversed()
Возвращает представление этой коллекции в обратном порядке. Порядок обхода элементов в возвращаемом представлении является обратным порядку обхода элементов этой коллекции. Обратный порядок влияет на все операции, чувствительные к порядку, включая операции над коллекциями-представлениями возвращаемого представления. Если реализация коллекции допускает изменение этого представления, изменения «передаются» базовой коллекции. В зависимости от реализации изменения базовой коллекции могут быть видны или не видны в этом представлении с обратным порядком.
Возвращает:
представление этой коллекции в обратном порядке

addFirst

default void addFirst(E e)
Добавляет элемент в начало этой коллекции (необязательная операция). После успешного завершения этой операции указанный элемент будет принадлежать этой коллекции и станет первым элементом в порядке обхода.
Требования к реализации:
Реализация этого интерфейса всегда генерирует UnsupportedOperationException.
Параметры:
e - добавляемый элемент
Вызывает:
NullPointerException - если указанный элемент равен null, а эта коллекция не допускает элементы null
UnsupportedOperationException - если эта реализация коллекции не поддерживает данную операцию

addLast

default void addLast(E e)
Добавляет элемент в конец этой коллекции (необязательная операция). После успешного завершения этой операции указанный элемент будет принадлежать этой коллекции и станет последним элементом в порядке обхода.
Требования к реализации:
Реализация этого интерфейса всегда генерирует UnsupportedOperationException.
Параметры:
e - добавляемый элемент.
Вызывает:
NullPointerException - если указанный элемент равен null, а эта коллекция не допускает элементы null
UnsupportedOperationException - если эта реализация коллекции не поддерживает данную операцию

getFirst

default E getFirst()
Возвращает первый элемент этой коллекции.
Требования к реализации:
Реализация этого интерфейса получает итератор этой коллекции, а затем получает элемент, вызывая метод next итератора. Любое возникшее NoSuchElementException передается вызывающему коду. В противном случае возвращается элемент.
Возвращает:
полученный элемент
Вызывает:
NoSuchElementException - если эта коллекция пуста

getLast

default E getLast()
Возвращает последний элемент этой коллекции.
Требования к реализации:
Реализация этого интерфейса получает итератор представления этой коллекции с обратным порядком, а затем получает элемент, вызывая метод next итератора. Любое возникшее NoSuchElementException передается вызывающему коду. В противном случае возвращается элемент.
Возвращает:
полученный элемент
Вызывает:
NoSuchElementException - если эта коллекция пуста

removeFirst

default E removeFirst()
Удаляет и возвращает первый элемент этой коллекции (необязательная операция).
Требования к реализации:
Реализация этого интерфейса получает итератор этой коллекции, а затем получает элемент, вызывая метод next итератора. Любое возникшее NoSuchElementException передается вызывающему коду. Затем вызывается метод remove итератора. Любое возникшее UnsupportedOperationException передается вызывающему коду. После этого возвращается элемент.
Возвращает:
удаленный элемент
Вызывает:
NoSuchElementException - если эта коллекция пуста
UnsupportedOperationException - если эта реализация коллекции не поддерживает данную операцию

removeLast

default E removeLast()
Удаляет и возвращает последний элемент этой коллекции (необязательная операция).
Требования к реализации:
Реализация этого интерфейса получает итератор представления этой коллекции с обратным порядком, а затем получает элемент, вызывая метод next итератора. Любое возникшее NoSuchElementException передается вызывающему коду. Затем вызывается метод remove итератора. Любое возникшее UnsupportedOperationException передается вызывающему коду. После этого возвращается элемент.
Возвращает:
удаленный элемент
Вызывает:
NoSuchElementException - если эта коллекция пуста
UnsupportedOperationException - если эта реализация коллекции не поддерживает данную операцию

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по 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