Интерфейс 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 |
Добавляет элемент в качестве первого элемента этого набора (необязательная операция). |
default void |
addLast |
Добавляет элемент в качестве последнего элемента этого набора (необязательная операция). |
default E |
getFirst() |
Возвращает первый элемент этого набора. |
default E |
getLast() |
Возвращает последний элемент этого набора. |
default E |
removeFirst() |
Удаляет и возвращает первый элемент этого набора (необязательная операция). |
default E |
removeLast() |
Удаляет и возвращает последний элемент этого набора (необязательная операция). |
SequencedCollection |
reversed() |
Возвращает вид этого набора в обратном порядке. |
Подробное описание методов
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