Spec-Zone.ru › OpenJDK 24

Интерфейс 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()
Возвращает вид этого набора в обратном порядке.

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

add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, parallelStream, remove, removeAll, removeIf, retainAll, size, spliterator, stream, toArray, toArray, toArray

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

forEach

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

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 - если реализация этого набора данных не поддерживает эту операцию

© 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/SequencedCollection.html

Spec-Zone.ru

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