Spec-Zone.ru › OpenJDK 27

Класс ConcurrentSkipListSet<E>

java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractSet<E>
java.util.concurrent.ConcurrentSkipListSet<E>
Параметры типа:
E — тип элементов, хранящихся в этом множестве
Все реализуемые интерфейсы:
Serializable, Cloneable, Iterable<E>, Collection<E>, NavigableSet<E>, SequencedCollection<E>, SequencedSet<E>, Set<E>, SortedSet<E>
public class ConcurrentSkipListSet<E> extends AbstractSet<E> implements NavigableSet<E>, Cloneable, Serializable
Масштабируемая конкурентная реализация NavigableSet, основанная на ConcurrentSkipListMap. Элементы множества хранятся в отсортированном порядке согласно их естественному порядку или в соответствии с Comparator, заданным при создании множества, в зависимости от используемого конструктора.

Эта реализация обеспечивает ожидаемую среднюю временную сложность log(n) для операций contains, add и remove, а также их вариантов. Операции вставки, удаления и доступа безопасно выполняются одновременно несколькими потоками.

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

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

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

Массовые операции, добавляющие, удаляющие или проверяющие несколько элементов, такие как AbstractCollection.addAll(Collection), Collection.removeIf(Predicate) или Iterable.forEach(Consumer), не гарантируют атомарное выполнение. Например, обход forEach, выполняющийся параллельно с операцией addAll, может увидеть только некоторые из добавленных элементов.

Этот класс и его итераторы реализуют все необязательные методы интерфейсов Set и Iterator. Как и большинство других реализаций конкурентных коллекций, этот класс не допускает использование элементов null, поскольку аргументы и возвращаемые значения null невозможно надежно отличить от отсутствия элементов.

Этот класс является частью Java Collections Framework.

Начиная с версии:
1.6
См. также:
  • Сериализованная форма

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

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

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

Модификатор и тип Метод Описание
boolean add(E e)
Добавляет указанный элемент в это множество, если он еще не присутствует.
void addFirst(E e)
Выбрасывает UnsupportedOperationException.
void addLast(E e)
Выбрасывает UnsupportedOperationException.
E ceiling(E e)
Возвращает наименьший элемент этого множества, больший или равный указанному элементу, либо null, если такого элемента нет.
void clear()
Удаляет все элементы из этого множества.
ConcurrentSkipListSet<E> clone()
Возвращает поверхностную копию этого экземпляра ConcurrentSkipListSet.
Comparator<? super E> comparator()
Возвращает компаратор, используемый для упорядочивания элементов этого множества, либо null, если множество использует естественный порядок своих элементов.
boolean contains(Object o)
Возвращает true, если это множество содержит указанный элемент.
Iterator<E> descendingIterator()
Возвращает итератор по элементам этого множества в порядке убывания.
NavigableSet<E> descendingSet()
Возвращает представление элементов этого множества в обратном порядке.
boolean equals(Object o)
Сравнивает указанный объект с этим множеством на равенство.
E first()
Возвращает первый (наименьший) элемент, находящийся в данный момент в этом множестве.
E floor(E e)
Возвращает наибольший элемент этого множества, меньший или равный указанному элементу, либо null, если такого элемента нет.
NavigableSet<E> headSet(E toElement)
Возвращает представление части этого множества, элементы которой строго меньше toElement.
NavigableSet<E> headSet(E toElement, boolean inclusive)
Возвращает представление части этого множества, элементы которой меньше (или равны, если inclusive имеет значение true) toElement.
E higher(E e)
Возвращает наименьший элемент этого множества, строго больший указанного элемента, либо null, если такого элемента нет.
boolean isEmpty()
Возвращает true, если это множество не содержит элементов.
Iterator<E> iterator()
Возвращает итератор по элементам этого множества в порядке возрастания.
E last()
Возвращает последний (наибольший) элемент, находящийся в данный момент в этом множестве.
E lower(E e)
Возвращает наибольший элемент этого множества, строго меньший указанного элемента, либо null, если такого элемента нет.
E pollFirst()
Извлекает и удаляет первый (наименьший) элемент либо возвращает null, если множество пусто (необязательная операция).
E pollLast()
Извлекает и удаляет последний (наибольший) элемент либо возвращает null, если множество пусто (необязательная операция).
boolean remove(Object o)
Удаляет указанный элемент из этого множества, если он присутствует.
boolean removeAll(Collection<?> c)
Удаляет из этого множества все элементы, содержащиеся в указанной коллекции.
int size()
Возвращает количество элементов в этом множестве.
Spliterator<E> spliterator()
Возвращает Spliterator для обхода элементов этого множества.
NavigableSet<E> subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
Возвращает представление части этого множества, элементы которой находятся в диапазоне от fromElement до toElement.
NavigableSet<E> subSet(E fromElement, E toElement)
Возвращает представление части этого множества, элементы которой находятся в диапазоне от fromElement включительно до toElement исключительно.
NavigableSet<E> tailSet(E fromElement)
Возвращает представление части этого множества, элементы которой больше или равны fromElement.
NavigableSet<E> tailSet(E fromElement, boolean inclusive)
Возвращает представление части этого множества, элементы которой больше (или равны, если inclusive имеет значение true) fromElement.

Методы, объявленные в классе AbstractSet

hashCode
Модификатор и тип Метод Описание
int hashCode()
Возвращает значение хеш-кода этого множества.

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

addAll, containsAll, retainAll, toArray, toArray, toString
Модификатор и тип Метод Описание
boolean addAll(Collection<? extends E> c)
Добавляет все элементы указанной коллекции в эту коллекцию (необязательная операция).
boolean containsAll(Collection<?> c)
Возвращает true, если эта коллекция содержит все элементы указанной коллекции.
boolean retainAll(Collection<?> c)
Оставляет в этой коллекции только элементы, содержащиеся в указанной коллекции (необязательная операция).
Object[] toArray()
Возвращает массив, содержащий все элементы этой коллекции.
<T> T[] toArray(T[] a)
Возвращает массив, содержащий все элементы этой коллекции; тип возвращаемого массива во время выполнения совпадает с типом указанного массива.
String toString()
Возвращает строковое представление этой коллекции.

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

finalize, getClass, notify, notifyAll, wait, wait, wait
Модификатор и тип Метод Описание
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удален в будущей версии.
Финализация объявлена устаревшей и будет удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс этого экземпляра Object во время выполнения.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
final void wait()
Переводит текущий поток в состояние ожидания до пробуждения, обычно в результате уведомления или прерывания.
final void wait(long timeoutMillis)
Переводит текущий поток в состояние ожидания до пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Переводит текущий поток в состояние ожидания до пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени.

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

parallelStream, removeIf, stream, toArray
Модификатор и тип Метод Описание
default Stream<E> parallelStream()
Возвращает, возможно, параллельный Stream, источником которого является эта коллекция.
default boolean removeIf(Predicate<? super E> filter)
Удаляет из этой коллекции все элементы, удовлетворяющие заданному предикату (необязательная операция).
default Stream<E> stream()
Возвращает последовательный Stream, источником которого является эта коллекция.
default <T> T[] toArray(IntFunction<T[]> generator)
Возвращает массив, содержащий все элементы этой коллекции; для выделения возвращаемого массива используется предоставленная функция generator.

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

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

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

removeFirst, removeLast, reversed
Модификатор и тип Метод Описание
default E removeFirst()
Удаляет и возвращает первый элемент этой коллекции (необязательная операция).
default E removeLast()
Удаляет и возвращает последний элемент этой коллекции (необязательная операция).
default NavigableSet<E> reversed()
Возвращает представление этой коллекции в обратном порядке.

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

addAll, containsAll, retainAll, toArray, toArray
Модификатор и тип Метод Описание
boolean addAll(Collection<? extends E> c)
Добавляет в это множество все элементы указанной коллекции, которых в нем еще нет (необязательная операция).
boolean containsAll(Collection<?> c)
Возвращает true, если это множество содержит все элементы указанной коллекции.
boolean retainAll(Collection<?> c)
Оставляет в этом множестве только элементы, содержащиеся в указанной коллекции (необязательная операция).
Object[] toArray()
Возвращает массив, содержащий все элементы этого множества.
<T> T[] toArray(T[] a)
Возвращает массив, содержащий все элементы этого множества; тип возвращаемого массива во время выполнения совпадает с типом указанного массива.

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

getFirst, getLast
Модификатор и тип Метод Описание
default E getFirst()
Возвращает первый элемент этой коллекции.
default E getLast()
Возвращает последний элемент этой коллекции.

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

ConcurrentSkipListSet

public ConcurrentSkipListSet()
Создает новое пустое множество, упорядочивающее элементы в соответствии с их естественным порядком.

ConcurrentSkipListSet

public ConcurrentSkipListSet(Comparator<? super E> comparator)
Создает новое пустое множество, упорядочивающее элементы в соответствии с указанным компаратором.
Параметры:
comparator — компаратор, который будет использоваться для упорядочивания этого множества. Если null, будет использоваться естественный порядок элементов.

ConcurrentSkipListSet

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

ConcurrentSkipListSet

public ConcurrentSkipListSet(SortedSet<E> s)
Создает новое множество, содержащее те же элементы и использующее тот же порядок, что и указанное отсортированное множество.
Параметры:
s — отсортированное множество, элементы которого составят новое множество
Исключения:
NullPointerException — если указанное отсортированное множество или любой из его элементов равен null

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

clone

public ConcurrentSkipListSet<E> clone()
Возвращает поверхностную копию этого экземпляра ConcurrentSkipListSet. (Сами элементы не клонируются.)
Переопределяет:
clone в классе Object
Возвращает:
поверхностную копию этого множества
См. также:
  • Cloneable

size

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

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

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

isEmpty

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

contains

public boolean contains(Object o)
Возвращает true, если это множество содержит указанный элемент. Точнее, возвращает true тогда и только тогда, когда это множество содержит элемент e, для которого выполняется o.equals(e).
Определено в:
contains в интерфейсе Collection<E>
Определено в:
contains в интерфейсе Set<E>
Переопределяет:
contains в классе AbstractCollection<E>
Параметры:
o — объект, наличие которого проверяется в этом множестве
Возвращает:
true, если это множество содержит указанный элемент
Исключения:
ClassCastException — если указанный элемент нельзя сравнить с элементами, которые в данный момент находятся в этом множестве
NullPointerException — если указанный элемент равен null

add

public boolean add(E e)
Добавляет указанный элемент в это множество, если он еще не присутствует. Точнее, добавляет указанный элемент e в это множество, если множество не содержит элемента e2, для которого выполняется e.equals(e2). Если этот элемент уже содержится в множестве, вызов не изменяет множество и возвращает false.
Определено в:
add в интерфейсе Collection<E>
Определено в:
add в интерфейсе Set<E>
Переопределяет:
add в классе AbstractCollection<E>
Параметры:
e — элемент, добавляемый в это множество
Возвращает:
true, если это множество еще не содержало указанный элемент
Исключения:
ClassCastException — если e нельзя сравнить с элементами, которые в данный момент находятся в этом множестве
NullPointerException — если указанный элемент равен null

remove

public boolean remove(Object o)
Удаляет указанный элемент из этого множества, если он в нем присутствует. Точнее, удаляет элемент e, для которого выполняется o.equals(e), если такой элемент содержится в этом множестве. Возвращает true, если это множество содержало данный элемент (или, что равнозначно, если в результате вызова множество изменилось). (После возврата из вызова множество не будет содержать этот элемент.)
Определено в:
remove в интерфейсе Collection<E>
Определено в:
remove в интерфейсе Set<E>
Переопределяет:
remove в классе AbstractCollection<E>
Параметры:
o — объект, который нужно удалить из этого множества, если он присутствует
Возвращает:
true, если это множество содержало указанный элемент
Исключения:
ClassCastException — если o нельзя сравнить с элементами, которые в данный момент находятся в этом множестве
NullPointerException — если указанный элемент равен null

clear

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

iterator

public Iterator<E> iterator()
Возвращает итератор по элементам этого множества в порядке возрастания.
Определено в:
iterator в интерфейсе Collection<E>
Определено в:
iterator в интерфейсе Iterable<E>
Определено в:
iterator в интерфейсе NavigableSet<E>
Определено в:
iterator в интерфейсе Set<E>
Определено в:
iterator в классе AbstractCollection<E>
Возвращает:
итератор по элементам этого множества в порядке возрастания

descendingIterator

public Iterator<E> descendingIterator()
Возвращает итератор по элементам этого множества в порядке убывания.
Определено в:
descendingIterator в интерфейсе NavigableSet<E>
Возвращает:
итератор по элементам этого множества в порядке убывания

equals

public boolean equals(Object o)
Сравнивает указанный объект с этим множеством на равенство. Возвращает true, если указанный объект также является множеством, множества имеют одинаковый размер и каждый элемент указанного множества содержится в этом множестве (или, что равнозначно, каждый элемент этого множества содержится в указанном множестве). Это определение гарантирует корректную работу метода equals для различных реализаций интерфейса множества.
Определено в:
equals в интерфейсе Collection<E>
Определено в:
equals в интерфейсе Set<E>
Переопределяет:
equals в классе AbstractSet<E>
Параметры:
o — объект, который сравнивается на равенство с этим множеством
Возвращает:
true, если указанный объект равен этому множеству
См. также:
  • Object.equals(Object)
  • Set.equals(Object)
  • List.equals(Object)

removeAll

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

lower

public E lower(E e)
Описание скопировано из интерфейса: NavigableSet
Возвращает наибольший элемент этого множества, строго меньший заданного элемента, или null, если такого элемента нет.
Определено в:
lower в интерфейсе NavigableSet<E>
Параметры:
e — значение для поиска
Возвращает:
наибольший элемент, меньший e, или null, если такого элемента нет
Исключения:
ClassCastException — если указанный элемент нельзя сравнить с элементами, которые в данный момент находятся в множестве
NullPointerException — если указанный элемент равен null

floor

public E floor(E e)
Описание скопировано из интерфейса: NavigableSet
Возвращает наибольший элемент этого множества, меньший или равный заданному элементу, или null, если такого элемента нет.
Определено в:
floor в интерфейсе NavigableSet<E>
Параметры:
e — значение для поиска
Возвращает:
наибольший элемент, меньший или равный e, или null, если такого элемента нет
Исключения:
ClassCastException — если указанный элемент нельзя сравнить с элементами, которые в данный момент находятся в множестве
NullPointerException — если указанный элемент равен null

ceiling

public E ceiling(E e)
Описание скопировано из интерфейса: NavigableSet
Возвращает наименьший элемент этого множества, больший или равный заданному элементу, или null, если такого элемента нет.
Определено в:
ceiling в интерфейсе NavigableSet<E>
Параметры:
e — значение для поиска
Возвращает:
наименьший элемент, больший или равный e, или null, если такого элемента нет
Исключения:
ClassCastException — если указанный элемент нельзя сравнить с элементами, которые в данный момент находятся в множестве
NullPointerException — если указанный элемент равен null

higher

public E higher(E e)
Описание скопировано из интерфейса: NavigableSet
Возвращает наименьший элемент этого множества, строго больший заданного элемента, или null, если такого элемента нет.
Определено в:
higher в интерфейсе NavigableSet<E>
Параметры:
e — значение для поиска
Возвращает:
наименьший элемент, больший e, или null, если такого элемента нет
Исключения:
ClassCastException — если указанный элемент нельзя сравнить с элементами, которые в данный момент находятся в множестве
NullPointerException — если указанный элемент равен null

pollFirst

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

pollLast

public E pollLast()
Описание скопировано из интерфейса: NavigableSet
Извлекает и удаляет последний (наибольший) элемент или возвращает null, если это множество пусто (необязательная операция).
Определено в:
pollLast в интерфейсе NavigableSet<E>
Возвращает:
последний элемент или null, если это множество пусто

comparator

public Comparator<? super E> comparator()
Описание скопировано из интерфейса: SortedSet
Возвращает компаратор, используемый для упорядочивания элементов этого множества, или null, если это множество использует естественный порядок своих элементов.
Определено в:
comparator в интерфейсе SortedSet<E>
Возвращает:
компаратор, используемый для упорядочивания элементов этого множества, или null, если это множество использует естественный порядок своих элементов

first

public E first()
Описание скопировано из интерфейса: SortedSet
Возвращает первый (наименьший) элемент, находящийся в данный момент в этом множестве.
Определено в:
first в интерфейсе SortedSet<E>
Возвращает:
первый (наименьший) элемент, находящийся в данный момент в этом множестве
Исключения:
NoSuchElementException — если это множество пусто

last

public E last()
Описание скопировано из интерфейса: SortedSet
Возвращает последний (наибольший) элемент, находящийся в данный момент в этом множестве.
Определено в:
last в интерфейсе SortedSet<E>
Возвращает:
последний (наибольший) элемент, находящийся в данный момент в этом множестве
Исключения:
NoSuchElementException — если это множество пусто

addFirst

public void addFirst(E e)
Выбрасывает UnsupportedOperationException. Порядок обхода, определяемый методом сравнения этого множества, задает позиции элементов, поэтому явное указание позиции не поддерживается.
Определено в:
addFirst в интерфейсе SequencedCollection<E>
Определено в:
addFirst в интерфейсе SortedSet<E>
Параметры:
e — добавляемый элемент
Исключения:
UnsupportedOperationException — всегда
Начиная с:
21

addLast

public void addLast(E e)
Выбрасывает UnsupportedOperationException. Порядок обхода, определяемый методом сравнения этого множества, задает позиции элементов, поэтому явное указание позиции не поддерживается.
Определено в:
addLast в интерфейсе SequencedCollection<E>
Определено в:
addLast в интерфейсе SortedSet<E>
Параметры:
e — добавляемый элемент.
Исключения:
UnsupportedOperationException — всегда
Начиная с:
21

subSet

public NavigableSet<E> subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
Описание скопировано из интерфейса: NavigableSet
Возвращает представление части этого множества, элементы которой находятся в диапазоне от fromElement до toElement. Если fromElement и toElement равны, возвращаемое множество пусто, если только fromInclusive и toInclusive не равны true одновременно. Возвращаемое множество опирается на это множество, поэтому изменения в возвращаемом множестве отражаются в этом множестве, и наоборот. Возвращаемое множество поддерживает все необязательные операции над множествами, поддерживаемые этим множеством.

При попытке вставить элемент за пределами диапазона возвращаемое множество выбросит IllegalArgumentException.

Определено в:
subSet в интерфейсе NavigableSet<E>
Параметры:
fromElement — нижняя граница возвращаемого множества
fromInclusive — true, если нижнюю границу нужно включить в возвращаемое представление
toElement — верхняя граница возвращаемого множества
toInclusive — true, если верхнюю границу нужно включить в возвращаемое представление
Возвращает:
представление части этого множества, элементы которой находятся в диапазоне от fromElement включительно до toElement исключительно
Исключения:
ClassCastException — если fromElement и toElement нельзя сравнить друг с другом с помощью компаратора этого множества (или, если у множества нет компаратора, с помощью естественного порядка). Реализации могут выбрасывать это исключение, если fromElement или toElement нельзя сравнить с элементами, которые в данный момент находятся в множестве, но это не обязательно.
NullPointerException — если fromElement или toElement равен null
IllegalArgumentException — если fromElement больше toElement; или если диапазон самого множества ограничен, а fromElement или toElement находится за его пределами.

headSet

public NavigableSet<E> headSet(E toElement, boolean inclusive)
Описание скопировано из интерфейса: NavigableSet
Возвращает представление части этого множества, элементы которой меньше (или равны, если inclusive имеет значение true) toElement. Возвращаемое множество опирается на это множество, поэтому изменения в возвращаемом множестве отражаются в этом множестве, и наоборот. Возвращаемое множество поддерживает все необязательные операции над множествами, поддерживаемые этим множеством.

При попытке вставить элемент за пределами диапазона возвращаемое множество выбросит IllegalArgumentException.

Определено в:
headSet в интерфейсе NavigableSet<E>
Параметры:
toElement — верхняя граница возвращаемого множества
inclusive — true, если верхнюю границу нужно включить в возвращаемое представление
Возвращает:
представление части этого множества, элементы которой меньше (или равны, если inclusive имеет значение true) toElement
Исключения:
ClassCastException — если toElement несовместим с компаратором этого множества (или, если у множества нет компаратора, если toElement не реализует Comparable). Реализации могут выбрасывать это исключение, если toElement нельзя сравнить с элементами, которые в данный момент находятся в множестве, но это не обязательно.
NullPointerException — если toElement равен null
IllegalArgumentException — если диапазон самого множества ограничен, а toElement находится за его пределами

tailSet

public NavigableSet<E> tailSet(E fromElement, boolean inclusive)
Описание скопировано из интерфейса: NavigableSet
Возвращает представление части этого множества, элементы которой больше (или равны, если inclusive имеет значение true) fromElement. Возвращаемое множество опирается на это множество, поэтому изменения в возвращаемом множестве отражаются в этом множестве, и наоборот. Возвращаемое множество поддерживает все необязательные операции над множествами, поддерживаемые этим множеством.

При попытке вставить элемент за пределами диапазона возвращаемое множество выбросит IllegalArgumentException.

Определено в:
tailSet в интерфейсе NavigableSet<E>
Параметры:
fromElement — нижняя граница возвращаемого множества
inclusive — true, если нижнюю границу нужно включить в возвращаемое представление
Возвращает:
представление части этого множества, элементы которой больше или равны fromElement
Исключения:
ClassCastException — если fromElement несовместим с компаратором этого множества (или, если у множества нет компаратора, если fromElement не реализует Comparable). Реализации могут выбрасывать это исключение, если fromElement нельзя сравнить с элементами, которые в данный момент находятся в множестве, но это не обязательно.
NullPointerException — если fromElement равен null
IllegalArgumentException — если диапазон самого множества ограничен, а fromElement находится за его пределами

subSet

public NavigableSet<E> subSet(E fromElement, E toElement)
Описание скопировано из интерфейса: NavigableSet
Возвращает представление части этого множества, элементы которой находятся в диапазоне от fromElement включительно до toElement исключительно. (Если fromElement и toElement равны, возвращаемое множество пусто.) Возвращаемое множество опирается на это множество, поэтому изменения в возвращаемом множестве отражаются в этом множестве, и наоборот. Возвращаемое множество поддерживает все необязательные операции над множествами, поддерживаемые этим множеством.

При попытке вставить элемент за пределами диапазона возвращаемое множество выбросит IllegalArgumentException.

Эквивалентно subSet(fromElement, true, toElement, false).

Определено в:
subSet в интерфейсе NavigableSet<E>
Определено в:
subSet в интерфейсе SortedSet<E>
Параметры:
fromElement — нижняя граница (включительно) возвращаемого множества
toElement — верхняя граница (исключительно) возвращаемого множества
Возвращает:
представление части этого множества, элементы которой находятся в диапазоне от fromElement включительно до toElement исключительно
Исключения:
ClassCastException — если fromElement и toElement нельзя сравнить друг с другом с помощью компаратора этого множества (или, если у множества нет компаратора, с помощью естественного порядка). Реализации могут выбрасывать это исключение, если fromElement или toElement нельзя сравнить с элементами, которые в данный момент находятся в множестве, но это не обязательно.
NullPointerException — если fromElement или toElement равен null
IllegalArgumentException — если fromElement больше toElement; или если диапазон самого множества ограничен, а fromElement или toElement находится за его пределами

headSet

public NavigableSet<E> headSet(E toElement)
Описание скопировано из интерфейса: NavigableSet
Возвращает представление части этого множества, элементы которой строго меньше toElement. Возвращаемое множество поддерживается этим множеством, поэтому изменения в возвращаемом множестве отражаются в этом множестве, и наоборот. Возвращаемое множество поддерживает все необязательные операции над множеством, поддерживаемые этим множеством.

При попытке вставить элемент за пределами диапазона возвращаемое множество выбросит IllegalArgumentException.

Эквивалентно headSet(toElement, false).

Определено в:
headSet в интерфейсе NavigableSet<E>
Определено в:
headSet в интерфейсе SortedSet<E>
Параметры:
toElement — верхняя граница (не включая её) возвращаемого множества
Возвращает:
представление части этого множества, элементы которой строго меньше toElement
Выбрасывает:
ClassCastException — если toElement несовместим с компаратором этого множества (или, если у множества нет компаратора, если toElement не реализует Comparable). Реализации могут выбрасывать это исключение, но не обязаны, если toElement нельзя сравнить с элементами, находящимися в данный момент в множестве.
NullPointerException — если toElement равен null
IllegalArgumentException — если для самого этого множества задан ограниченный диапазон и toElement находится за его пределами

tailSet

public NavigableSet<E> tailSet(E fromElement)
Описание скопировано из интерфейса: NavigableSet
Возвращает представление части этого множества, элементы которой больше или равны fromElement. Возвращаемое множество поддерживается этим множеством, поэтому изменения в возвращаемом множестве отражаются в этом множестве, и наоборот. Возвращаемое множество поддерживает все необязательные операции над множеством, поддерживаемые этим множеством.

При попытке вставить элемент за пределами диапазона возвращаемое множество выбросит IllegalArgumentException.

Эквивалентно tailSet(fromElement, true).

Определено в:
tailSet в интерфейсе NavigableSet<E>
Определено в:
tailSet в интерфейсе SortedSet<E>
Параметры:
fromElement — нижняя граница (включая её) возвращаемого множества
Возвращает:
представление части этого множества, элементы которой больше или равны fromElement
Выбрасывает:
ClassCastException — если fromElement несовместим с компаратором этого множества (или, если у множества нет компаратора, если fromElement не реализует Comparable). Реализации могут выбрасывать это исключение, но не обязаны, если fromElement нельзя сравнить с элементами, находящимися в данный момент в множестве.
NullPointerException — если fromElement равен null
IllegalArgumentException — если для самого этого множества задан ограниченный диапазон и fromElement находится за его пределами

descendingSet

public NavigableSet<E> descendingSet()
Возвращает представление элементов этого множества в обратном порядке. Убывающее множество поддерживается этим множеством, поэтому изменения в множестве отражаются в убывающем множестве, и наоборот.

Порядок элементов возвращаемого множества эквивалентен порядку, задаваемому Collections.reverseOrder(comparator()). Выражение s.descendingSet().descendingSet() возвращает представление s, по существу эквивалентное s.

Определено в:
descendingSet в интерфейсе NavigableSet<E>
Возвращает:
представление этого множества в обратном порядке

spliterator

public Spliterator<E> spliterator()
Возвращает Spliterator для элементов этого множества.

Spliterator сообщает характеристики Spliterator.CONCURRENT, Spliterator.NONNULL, Spliterator.DISTINCT, Spliterator.SORTED и Spliterator.ORDERED; порядок обхода — по возрастанию. Переопределяющие реализации должны документировать сведения о дополнительных значениях характеристик.

Компаратор сплитератора равен null, если компаратор множества равен null. В противном случае компаратор сплитератора совпадает с компаратором множества или задаёт тот же полный порядок.

Определено в:
spliterator в интерфейсе Collection<E>
Определено в:
spliterator в интерфейсе Iterable<E>
Определено в:
spliterator в интерфейсе Set<E>
Определено в:
spliterator в интерфейсе SortedSet<E>
Возвращает:
Spliterator для элементов этого множества
С версии:
1.8

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