Интерфейс Set<E>
- Параметры типа:
-
E- тип элементов, поддерживаемых этим множеством
- Все суперинтерфейсы:
-
Collection<E>,Iterable<E>
- Все известные подинтерфейсы:
-
EventSet,NavigableSet<E>,SortedSet<E>
- Все известные реализующие классы:
-
AbstractSet,ConcurrentHashMap.KeySetView,ConcurrentSkipListSet,CopyOnWriteArraySet,EnumSet,HashSet,JobStateReasons,LinkedHashSet,TreeSet
public interface Set<E> extends Collection<E>
Коллекция, которая не содержит дублирующих элементов. Более формально, множества не содержат пары элементов e1 и e2 таких, что e1.equals(e2), и не более одного нулевого элемента. Как следует из его названия, этот интерфейс моделирует абстракцию математического множества.
Интерфейс Set накладывает дополнительные условия, помимо унаследованных от интерфейса Collection, на контракты всех конструкторов и на контракты методов add, equals и hashCode. Объявления других унаследованных методов также включены здесь для удобства. (Спецификации, сопровождающие эти объявления, были адаптированы к интерфейсу Set, но они не содержат дополнительных условий.)
Дополнительное условие для конструкторов, не удивительно, заключается в том, что все конструкторы должны создавать множество, не содержащее дублирующих элементов (как определено выше).
Примечание: необходимо проявлять особую осторожность, если в качестве элементов множества используются изменяемые объекты. Поведение множества не определено, если значение объекта изменяется таким образом, что влияет на equals сравнения, пока объект является элементом множества. Особого случая этого запрета является то, что множество не может содержать себя в качестве элемента.
Некоторые реализации множеств имеют ограничения на элементы, которые они могут содержать. Например, некоторые реализации запрещают нулевые элементы, и некоторые имеют ограничения на типы элементов. Попытка добавить неприемлемый элемент вызывает исключение, не подлежащее проверке, обычно NullPointerException или ClassCastException. Попытка запросить наличие неприемлемого элемента может вызвать исключение, или она просто вернёт false; некоторые реализации будут проявлять первое поведение, а некоторые — последнее. Более общим образом, попытка выполнения операции над неприемлемым элементом, завершение которой не приведет к вставке неприемлемого элемента в множество, может вызвать исключение или может завершиться успешно по усмотрению реализации. Такие исключения помечены как «необязательные» в спецификации этого интерфейса.
Неизменяемые множества
Статические фабричные методы Set.of и Set.copyOf обеспечивают удобный способ создания неизменяемых множеств. Множества Set, созданные этими методами, обладают следующими характеристиками:
- Они являются неизменяемыми. Элементы нельзя добавлять или удалять. Вызов любого метода изменения над множеством всегда вызовет
UnsupportedOperationException. Однако, если содержащиеся элементы являются изменяемыми, это может привести к тому, что множество будет вести себя несогласованно или его содержимое будет казаться изменяющимся. - Они запрещают
nullэлементы. Попытки создать их сnullэлементами приводят кNullPointerException. - Они сериализуемы, если все элементы сериализуемы.
- Они отклоняют дублируемые элементы во время создания. Дублируемые элементы, переданные в статический фабричный метод, приводят к
IllegalArgumentException. - Порядок итерации элементов множества не определен и может быть изменён.
- Они являются значение-ориентированными. Вызывающие стороны не должны делать предположений об идентичности возвращённых экземпляров. Фабрики могут свободно создавать новые экземпляры или повторно использовать существующие. Поэтому операции, чувствительные к идентичности, над этими экземплярами (сравнение по ссылке (
==), хэш-код по идентичности и синхронизация) ненадежны и следует избегать. - Они сериализуются, как указано на странице Сериализованная форма.
Этот интерфейс является членом Java Collections Framework.
- С момента:
- 1.2
- См. также:
-
Collection,List,SortedSet,HashSet,TreeSet,AbstractSet,Collections.singleton(java.lang.Object),Collections.EMPTY_SET
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean | add(E e) | Добавляет указанный элемент в это множество, если он ещё не присутствует (необязательная операция). |
boolean | addAll(Collection<? extends E> c) | Добавляет все элементы из указанной коллекции в это множество, если они ещё не присутствуют (необязательная операция). |
void | clear() | Удаляет все элементы из этого множества (необязательная операция). |
boolean | contains(Object o) | Возвращает |
boolean | containsAll(Collection<?> c) | Возвращает |
static <E> Set<E> | copyOf(Collection<? extends E> coll) | Возвращает неизменяемое множество, содержащее элементы заданной коллекции. |
boolean | equals(Object o) | Сравнивает указанный объект с этим множеством на предмет равенства. |
int | hashCode() | Возвращает значение хэш-кода для этого множества. |
boolean | isEmpty() | Возвращает |
Iterator<E> | iterator() | Возвращает итератор по элементам в этом множестве. |
static <E> Set<E> | of() | Возвращает неизменяемое множество, содержащее ноль элементов. |
static <E> Set<E> | of(E e1) | Возвращает неизменяемое множество, содержащее один элемент. |
static <E> Set<E> | of(E... elements) | Возвращает неизменяемое множество, содержащее произвольное количество элементов. |
static <E> Set<E> | of(E e1,
E e2) | Возвращает неизменяемое множество, содержащее два элемента. |
static <E> Set<E> | of(E e1,
E e2,
E e3) | Возвращает неизменяемое множество, содержащее три элемента. |
static <E> Set<E> | of(E e1,
E e2,
E e3,
E e4) | Возвращает неизменяемое множество, содержащее четыре элемента. |
static <E> Set<E> | of(E e1,
E e2,
E e3,
E e4,
E e5) | Возвращает неизменяемое множество, содержащее пять элементов. |
static <E> Set<E> | of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6) | Возвращает неизменяемое множество, содержащее шесть элементов. |
static <E> Set<E> | of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7) | Возвращает неизменяемое множество, содержащее семь элементов. |
static <E> Set<E> | of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7,
E e8) | Возвращает неизменяемое множество, содержащее восемь элементов. |
static <E> Set<E> | of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7,
E e8,
E e9) | Возвращает неизменяемое множество, содержащее девять элементов. |
static <E> Set<E> | of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7,
E e8,
E e9,
E e10) | Возвращает неизменяемое множество, содержащее десять элементов. |
boolean | remove(Object o) | Удаляет указанный элемент из этого множества, если он присутствует (необязательная операция). |
boolean | removeAll(Collection<?> c) | Удаляет из этого множества все его элементы, содержащиеся в указанной коллекции (необязательная операция). |
boolean | retainAll(Collection<?> c) | Оставляет только элементы в этом множестве, содержащиеся в указанной коллекции (необязательная операция). |
int | size() | Возвращает количество элементов в этом множестве (его мощность). |
default Spliterator<E> | spliterator() | Создаёт |
Object[] | toArray() | Возвращает массив, содержащий все элементы в этом множестве. |
<T> T[] | toArray(T[] a) | Возвращает массив, содержащий все элементы в этом множестве; тип времени выполнения возвращаемого массива — тип указанного массива. |
Методы, объявленные в интерфейсе java.util.Collection
parallelStream, removeIf, stream, toArray Методы, объявленные в интерфейсе java.lang.Iterable
forEach Методы
size
int size()
Возвращает количество элементов в этом наборе (его мощность). Если этот набор содержит более Integer.MAX_VALUE элементов, возвращает Integer.MAX_VALUE.
- Указано в:
-
sizeв интерфейсеCollection<E> - Возвращает:
- количество элементов в этом наборе (его мощность)
isEmpty
boolean isEmpty()
Возвращает true, если этот набор не содержит элементов.
- Указано в:
-
isEmptyв интерфейсеCollection<E> - Возвращает:
-
trueесли этот набор не содержит элементов
contains
boolean contains(Object o)
Возвращает true, если этот набор содержит указанный элемент. Более формально, возвращает true тогда и только тогда, когда этот набор содержит элемент e такой, что Objects.equals(o, e).
- Указано в:
-
containsв интерфейсеCollection<E> - Параметры:
-
o- элемент, присутствие которого в этом наборе требуется проверить - Возвращает:
-
trueесли этот набор содержит указанный элемент - Исключения:
-
ClassCastException- если тип указанного элемента несовместим с этим набором (необязательно) -
NullPointerException- если указанный элемент равен null, а этот набор не допускает null-элементов (необязательно)
iterator
Iterator<E> iterator()
Возвращает итератор по элементам в этом наборе. Элементы возвращаются в произвольном порядке (если этот набор не является экземпляром какого-либо класса, предоставляющего гарантию).
- Указано в:
-
iteratorв интерфейсеCollection<E> - Указано в:
-
iteratorв интерфейсеIterable<E> - Возвращает:
- итератор по элементам в этом наборе
toArray
Object[] toArray()
Возвращает массив, содержащий все элементы в этом наборе. Если этот набор гарантирует порядок возвращения своих элементов с помощью своего итератора, этот метод должен возвращать элементы в том же порядке.
Возвращаемый массив будет «безопасным» в том смысле, что на него не сохраняются ссылки из этого набора. (Другими словами, этот метод должен выделять новый массив, даже если этот набор поддерживается массивом). Таким образом, вызывающая сторона свободна изменять возвращаемый массив.
Этот метод служит мостом между API на основе массивов и API на основе коллекций.
- Указано в:
-
toArrayв интерфейсеCollection<E> - Возвращает:
- массив, содержащий все элементы в этом наборе
toArray
<T> T[] toArray(T[] a)
Возвращает массив, содержащий все элементы в этом наборе; тип времени выполнения возвращаемого массива — это тип времени выполнения указанного массива. Если набор помещается в указанный массив, он возвращается в нём. В противном случае выделяется новый массив с типом времени выполнения указанного массива и размером этого набора.
Если этот набор помещается в указанный массив с избыточным пространством (т.е. массив содержит больше элементов, чем этот набор), элемент в массиве, непосредственно следующий за концом набора, устанавливается в null. (Это полезно для определения длины этого набора *только* если вызывающая сторона знает, что этот набор не содержит null-элементов.)
Если этот набор гарантирует порядок возвращения своих элементов с помощью своего итератора, этот метод должен возвращать элементы в том же порядке.
Как и метод toArray(), этот метод действует как мост между API на основе массивов и API на основе коллекций. Кроме того, этот метод позволяет точно контролировать тип времени выполнения массива вывода и может в определённых обстоятельствах использоваться для экономии расходов на выделение памяти.
Предположим, что x — это множество, известное тем, что содержит только строки. Следующий код может быть использован для выгрузки множества в новый массив типа String:
String[] y = x.toArray(new String[0]);Обратите внимание, что
toArray(new Object[0]) идентичен по функции toArray().- Указано в:
-
toArrayв интерфейсеCollection<E> - Параметры типа:
-
T- тип компонента массива, содержащего коллекцию - Параметры:
-
a- массив, в который должны быть помещены элементы этого набора, если он достаточно велик; в противном случае для этой цели выделяется новый массив того же типа времени выполнения. - Возвращает:
- массив, содержащий все элементы в этом наборе
- Исключения:
-
ArrayStoreException- если тип времени выполнения указанного массива не является надтипом типа времени выполнения каждого элемента в этом наборе -
NullPointerException- если указанный массив равен null
add
boolean add(E e)
Добавляет указанный элемент в этот набор, если он ещё не присутствует (необязательная операция). Более формально, добавляет указанный элемент e в этот набор, если набор не содержит элемент e2 такой, что Objects.equals(e, e2). Если этот набор уже содержит элемент, вызов оставляет набор неизменным и возвращает false. В сочетании с ограничением на конструкторы это гарантирует, что наборы никогда не содержат дублирующих элементов.
Вышеуказанное условие не подразумевает, что наборы должны принимать все элементы; наборы могут отказаться от добавления любого конкретного элемента, включая null, и выбросить исключение, как описано в спецификации для Collection.add. Отдельные реализации наборов должны чётко документировать любые ограничения на элементы, которые они могут содержать.
- Указано в:
-
addв интерфейсеCollection<E> - Параметры:
-
e- элемент, который нужно добавить в этот набор - Возвращает:
-
trueесли этот набор ещё не содержал указанный элемент - Исключения:
-
UnsupportedOperationException- если операцияaddне поддерживается этим набором -
ClassCastException- если класс указанного элемента не позволяет добавить его в этот набор -
NullPointerException- если указанный элемент равен null, а этот набор не допускает null-элементов -
IllegalArgumentException- если какое-либо свойство указанного элемента мешает его добавлению в этот набор
remove
boolean remove(Object o)
Удаляет указанный элемент из этого набора, если он присутствует (необязательная операция). Более формально, удаляет элемент e такой, что Objects.equals(o, e), если этот набор содержит такой элемент. Возвращает true если этот набор содержал элемент (или, что эквивалентно, если этот набор изменился в результате вызова). (Этот набор не будет содержать элемент после возврата вызова.)
- Указано в:
-
removeв интерфейсеCollection<E> - Параметры:
-
o- объект, который нужно удалить из этого набора, если он присутствует - Возвращает:
-
trueесли этот набор содержал указанный элемент - Исключения:
-
ClassCastException- если тип указанного элемента несовместим с этим набором (необязательно) -
NullPointerException- если указанный элемент равен null, а этот набор не допускает null-элементов (необязательно) -
UnsupportedOperationException- если операцияremoveне поддерживается этим набором
containsAll
boolean containsAll(Collection<?> c)
Возвращает true если этот набор содержит все элементы указанной коллекции. Если указанная коллекция также является набором, этот метод возвращает true если она является *подмножеством* этого набора.
- Указано в:
-
containsAllв интерфейсеCollection<E> - Параметры:
-
c- коллекция, которая проверяется на включение в этот набор - Возвращает:
-
trueесли этот набор содержит все элементы указанной коллекции - Исключения:
-
ClassCastException- если типы одного или нескольких элементов в указанной коллекции несовместимы с этим набором (необязательно) -
NullPointerException- если указанная коллекция содержит один или несколько null-элементов, а этот набор не допускает null-элементов (необязательно), или если указанная коллекция равна null - См. также:
contains(Object)
addAll
boolean addAll(Collection<? extends E> c)
Добавляет все элементы указанной коллекции в этот набор, если они ещё не присутствуют (необязательная операция). Если указанная коллекция также является набором, операция addAll фактически изменяет этот набор так, что его значение является *объединением* двух наборов. Поведение этой операции не определено, если указанная коллекция модифицируется во время выполнения операции.
- Указано в:
-
addAllв интерфейсеCollection<E> - Параметры:
-
c- коллекция, содержащая элементы, которые нужно добавить в этот набор - Возвращает:
-
trueесли этот набор изменился в результате вызова - Исключения:
-
UnsupportedOperationException- если операцияaddAllне поддерживается этим набором -
ClassCastException- если класс элемента указанной коллекции препятствует его добавлению в этот набор -
NullPointerException- если указанная коллекция содержит один или несколько null-элементов, а этот набор не допускает null-элементов, или если указанная коллекция равна null -
IllegalArgumentException- если какое-либо свойство элемента указанной коллекции препятствует его добавлению в этот набор - См. также:
add(Object)
retainAll
boolean retainAll(Collection<?> c)
Сохраняет только элементы в этом наборе, которые содержатся в указанной коллекции (необязательная операция). Другими словами, удаляет из этого набора все его элементы, которые не содержатся в указанной коллекции. Если указанная коллекция также является набором, эта операция фактически изменяет этот набор так, что его значение является *пересечением* двух наборов.
- Указано:
-
retainAllв интерфейсеCollection<E> - Параметры:
-
c- коллекция, содержащая элементы, которые должны быть сохранены в этом наборе - Возвращает:
-
trueесли этот набор был изменён в результате вызова - Исключение:
-
UnsupportedOperationException- если операцияretainAllне поддерживается этим набором -
ClassCastException- если класс элемента этого набора несовместим с указанной коллекцией (необязательно) -
NullPointerException- если этот набор содержит нулевой элемент, а указанная коллекция не допускает нулевых элементов (необязательно), или если указанная коллекция равна null - См. также:
remove(Object)
removeAll
boolean removeAll(Collection<?> c)
Удаляет из этого набора все его элементы, которые содержатся в указанной коллекции (необязательная операция). Если указанная коллекция также является набором, эта операция фактически изменяет этот набор таким образом, что его значение является асимметричной разностью двух наборов.
- Указано:
-
removeAllв интерфейсеCollection<E> - Параметры:
-
c- коллекция, содержащая элементы, которые должны быть удалены из этого набора - Возвращает:
-
trueесли этот набор был изменён в результате вызова - Исключение:
-
UnsupportedOperationException- если операцияremoveAllне поддерживается этим набором -
ClassCastException- если класс элемента этого набора несовместим с указанной коллекцией (необязательно) -
NullPointerException- если этот набор содержит нулевой элемент, а указанная коллекция не допускает нулевых элементов (необязательно), или если указанная коллекция равна null - См. также:
-
remove(Object),contains(Object)
clear
void clear()
Удаляет все элементы из этого набора (необязательная операция). Набор будет пустым после возврата этого вызова.
- Указано:
-
clearв интерфейсеCollection<E> - Исключение:
-
UnsupportedOperationException- если методclearне поддерживается этим набором
equals
boolean equals(Object o)
Сравнивает указанный объект с этим набором на предмет равенства. Возвращает true если указанный объект также является набором, у двух наборов одинаковый размер, и каждый член указанного набора содержится в этом наборе (или, что эквивалентно, каждый член этого набора содержится в указанном наборе). Это определение гарантирует, что метод equals работает правильно для разных реализаций интерфейса set.
- Указано:
-
equalsв интерфейсеCollection<E> - Переопределяет:
-
equalsв классеObject - Параметры:
-
o- объект для сравнения на равенство с этим набором - Возвращает:
-
trueесли указанный объект равен этому набору - См. также:
-
Object.hashCode(),HashMap
hashCode
int hashCode()
Возвращает значение хэш-кода для этого набора. Хэш-код набора определяется как сумма хэш-кодов элементов в наборе, где хэш-код null элемента равен нулю. Это гарантирует, что s1.equals(s2) подразумевает, что s1.hashCode()==s2.hashCode() для любых двух наборов s1 и s2, как требуется общим контрактом Object.hashCode().
- Указано:
-
hashCodeв интерфейсеCollection<E> - Переопределяет:
-
hashCodeв классеObject - Возвращает:
- значение хэш-кода для этого набора
- См. также:
-
Object.equals(Object),equals(Object)
spliterator
default Spliterator<E> spliterator()
Создаёт итератор Spliterator по элементам в этом наборе.
Итератор Spliterator сообщает о Spliterator.DISTINCT. Реализации должны документировать сообщение об дополнительных характеристиках.
- Указано:
-
spliteratorв интерфейсеCollection<E> - Указано:
-
spliteratorв интерфейсеIterable<E> - Требования к реализации:
- По умолчанию реализация создаёт итератор поздней привязки из
Iteratorнабора. Итератор наследует свойства быстрого отказа от итератора набора.Созданный итератор
Spliteratorдополнительно сообщает оSpliterator.SIZED. - Примечание реализации:
- Созданный итератор
Spliteratorдополнительно сообщает оSpliterator.SUBSIZED. - Возвращает:
- итератор
Spliteratorпо элементам в этом наборе - С:
- 1.8
of
static <E> Set<E> of()
Возвращает неизменяемый набор, содержащий ноль элементов. Подробнее см. Неизменяемые наборы.
- Параметры типа:
-
E- тип элементаSet - Возвращает:
- пустой
Set - С:
- 9
of
static <E> Set<E> of(E e1)
Возвращает неизменяемый набор, содержащий один элемент. Подробнее см. Неизменяемые наборы.
- Параметры типа:
-
E- тип элементаSet - Параметры:
-
e1- единственный элемент - Возвращает:
- набор
Set, содержащий указанный элемент - Исключение:
-
NullPointerException- если элементnull - С:
- 9
of
static <E> Set<E> of(E e1,
E e2) Возвращает неизменяемый набор, содержащий два элемента. Подробнее см. Неизменяемые наборы.
- Параметры типа:
-
E- тип элементаSet - Параметры:
-
e1- первый элемент -
e2- второй элемент - Возвращает:
- набор
Set, содержащий указанные элементы - Исключение:
-
IllegalArgumentException- если элементы являются дубликатами -
NullPointerException- если элементnull - С:
- 9
of
static <E> Set<E> of(E e1,
E e2,
E e3) Возвращает неизменяемый набор, содержащий три элемента. Подробнее см. Неизменяемые наборы.
- Параметры типа:
-
E- тип элементаSet - Параметры:
-
e1- первый элемент -
e2- второй элемент -
e3- третий элемент - Возвращает:
- набор
Setсодержащий указанные элементы - Исключение:
-
IllegalArgumentException- если есть дублируемые элементы -
NullPointerException- если элементnull - С:
- 9
of
static <E> Set<E> of(E e1,
E e2,
E e3,
E e4) Возвращает неизменяемый набор, содержащий четыре элемента. Подробнее см. Неизменяемые наборы.
- Параметры типа:
-
E- тип элементаSet - Параметры:
-
e1- первый элемент -
e2- второй элемент -
e3- третий элемент -
e4- четвёртый элемент - Возвращает:
- набор
Setсодержащий указанные элементы - Исключение:
-
IllegalArgumentException- если есть дублируемые элементы -
NullPointerException- если элементnull - С:
- 9
of
static <E> Set<E> of(E e1,
E e2,
E e3,
E e4,
E e5) Возвращает неизменяемый набор, содержащий пять элементов. Подробнее см. Неизменяемые наборы.
- Параметры типа:
-
E- тип элементаSet - Параметры:
-
e1- первый элемент -
e2- второй элемент -
e3- третий элемент -
e4- четвёртый элемент -
e5- пятый элемент - Возвращает:
- набор
Setсодержащий указанные элементы - Исключение:
-
IllegalArgumentException- если есть дублируемые элементы -
NullPointerException- если элементnull - С:
- 9
of
static <E> Set<E> of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6) Возвращает неизменяемый набор, содержащий шесть элементов. Подробнее см. Неизменяемые наборы.
- Параметры типа:
-
E- тип элементаSet - Параметры:
-
e1- первый элемент -
e2- второй элемент -
e3- третий элемент -
e4- четвёртый элемент -
e5- пятый элемент -
e6- шестой элемент - Возвращает:
- набор
Setсодержащий указанные элементы - Исключение:
-
IllegalArgumentException- если есть дублируемые элементы -
NullPointerException- если элементnull - С:
- 9
of
static <E> Set<E> of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7) Возвращает неизменяемый набор, содержащий семь элементов. Подробнее см. Неизменяемые наборы.
- Параметры типа:
-
E- тип элементаSet - Параметры:
-
e1- первый элемент -
e2- второй элемент -
e3- третий элемент -
e4- четвёртый элемент -
e5- пятый элемент -
e6- шестой элемент -
e7- седьмой элемент - Возвращаемое значение:
- множество
Set, содержащее указанные элементы - Исключения:
-
IllegalArgumentException- если есть какие-либо дублирующиеся элементы -
NullPointerException- если элемент являетсяnull - С тех пор как:
- 9
of
static <E> Set<E> of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7,
E e8) Возвращает неизменяемое множество, содержащее восемь элементов. Подробнее см. Неизменяемые множества.
- Параметры типа:
-
E- тип элементаSet - Параметры:
-
e1- первый элемент -
e2- второй элемент -
e3- третий элемент -
e4- четвёртый элемент -
e5- пятый элемент -
e6- шестой элемент -
e7- седьмой элемент -
e8- восьмой элемент - Возвращаемое значение:
- множество
Set, содержащее указанные элементы - Исключения:
-
IllegalArgumentException- если есть какие-либо дублирующиеся элементы -
NullPointerException- если элемент являетсяnull - С тех пор как:
- 9
of
static <E> Set<E> of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7,
E e8,
E e9) Возвращает неизменяемое множество, содержащее девять элементов. Подробнее см. Неизменяемые множества.
- Параметры типа:
-
E- тип элементаSet - Параметры:
-
e1- первый элемент -
e2- второй элемент -
e3- третий элемент -
e4- четвёртый элемент -
e5- пятый элемент -
e6- шестой элемент -
e7- седьмой элемент -
e8- восьмой элемент -
e9- девятый элемент - Возвращаемое значение:
- множество
Set, содержащее указанные элементы - Исключения:
-
IllegalArgumentException- если есть какие-либо дублирующиеся элементы -
NullPointerException- если элемент являетсяnull - С тех пор как:
- 9
of
static <E> Set<E> of(E e1,
E e2,
E e3,
E e4,
E e5,
E e6,
E e7,
E e8,
E e9,
E e10) Возвращает неизменяемое множество, содержащее десять элементов. Подробнее см. Неизменяемые множества.
- Параметры типа:
-
E- тип элементаSet - Параметры:
-
e1- первый элемент -
e2- второй элемент -
e3- третий элемент -
e4- четвёртый элемент -
e5- пятый элемент -
e6- шестой элемент -
e7- седьмой элемент -
e8- восьмой элемент -
e9- девятый элемент -
e10- десятый элемент - Возвращаемое значение:
- множество
Set, содержащее указанные элементы - Исключения:
-
IllegalArgumentException- если есть какие-либо дублирующиеся элементы -
NullPointerException- если элемент являетсяnull - С тех пор как:
- 9
of
@SafeVarargs static <E> Set<E> of(E... elements)
Возвращает неизменяемое множество, содержащее любое количество элементов. Подробнее см. Неизменяемые множества.
- Примечание API:
- Этот метод также принимает один массив в качестве аргумента. Тип элемента возвращаемого множества будет типом компонентов массива, а размер множества будет равен длине массива. Для создания множества с одним элементом, который является массивом, сделайте следующее:
String[] array = ... ; Set<String[]> list = Set.<String[]>of(array);Это вызовет методSet.of(E)вместо этого. - Параметры типа:
-
E- тип элементаSet - Параметры:
-
elements- элементы, которые должны содержаться в множестве - Возвращаемое значение:
- множество
Set, содержащее указанные элементы - Исключения:
-
IllegalArgumentException- если есть какие-либо дублирующиеся элементы -
NullPointerException- если элемент являетсяnullили если массивnull - С тех пор как:
- 9
copyOf
static <E> Set<E> copyOf(Collection<? extends E> coll)
Возвращает неизменяемое множество, содержащее элементы заданного набора Collection. Заданный набор Collection не должен быть null и не должен содержать null-элементов. Если заданный набор Collection содержит дублирующиеся элементы, произвольный элемент дубликатов сохраняется. Если заданный набор Collection впоследствии будет изменён, возвращаемое множество не будет отражать такие изменения.
- Примечание реализации:
- Если заданный набор Collection является неизменяемым множеством, вызов copyOf обычно не создаст копию.
- Параметры типа:
-
E- тип элементаSet - Параметры:
-
coll- набор Collection, из которого извлекаются элементы, не должен быть null - Возвращаемое значение:
- неизменяемое множество
Set, содержащее элементы заданного набораCollection - Исключения:
-
NullPointerException- если coll равно null или содержит null-элементы - С тех пор как:
- 10
© 1993, 2020, 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/11/docs/api/java.base/java/util/Set.html