Set.of()
Создаёт неизменяемое множество из перечисленных элементов.
Доступно с: Java 9
Синтаксис
static <E> Set<E> of(E... elements)Параметры
| Параметр | Тип | Описание |
|---|---|---|
| elements | E... | Элементы множества; повторы и `null` запрещены. |
Возвращаемое значение
Set<E>Неизменяемое множество.
Примеры
Быстрая проверка принадлежности:
void main() {
Set<String> vowels = Set.of("a", "e", "i", "o", "u");
IO.println(vowels.contains("e"));
IO.println(vowels.contains("x"));
}Результат:
true
falseПовтор в аргументах — ошибка:
void main() {
try {
Set.of("red", "green", "red");
} catch (IllegalArgumentException e) {
IO.println(e.getMessage());
}
}Результат:
duplicate element: redПримечания
Порядок обхода такого множества не определён и может меняться между запусками программы, поэтому не печатайте его, если важен порядок. В отличие от new HashSet<>(...), повторяющиеся аргументы не отбрасываются молча, а вызывают IllegalArgumentException. Убрать повторы из готовой коллекции помогает Set.copyOf().
См. также
- HashSet — Множество без повторов на основе хеш-таблицы; порядок не гарантирован.
- List.of() — Создаёт неизменяемый список из перечисленных элементов.
- Set.copyOf() — Создаёт неизменяемое множество из коллекции, отбрасывая повторы.
- Set.contains() — Проверяет, есть ли элемент в множестве.
В учебнике
- Множества: Set — Множества в Java: HashSet без повторов, LinkedHashSet и TreeSet с порядком, объединение и пересечение множеств.