HashSet — это коллекция для хранения уникальных элементов без гарантии порядка. Относится к пакету java.util и реализует интерфейс Set, внутренне опираясь на HashMap.
Основные особенности Java HashSet:
🔹Дубликаты игнорируются. Если добавить элемент, который уже есть в множестве — ничего не произойдёт.
🔹Элементы не упорядочены ни по добавлению, ни по значению.
🔹Допускается один null-элемент.
Производительность: Базовые операции
add, remove, contains выполняются за константное время O(1), при условии качественной хеш-функции.Даже если дважды добавить строку "BMW" — в сете она появится только один раз.
Часто используемые операции:
—
add(E e) — добавляет элемент, если его ещё нет—
remove(Object o) — удаляет элемент, если он есть—
contains(Object o) — проверяет наличие элемента—
size() — возвращает количество элементов—
clear() — очищает сетКак работает внутри
HashSet использует внутренний HashMap, где элементы сета хранятся как ключи, а значением выступает фиктивный объект. Это позволяет обеспечить уникальность и быстрый доступ.При выводе содержимого
HashSet — элементы отображаются в произвольном порядке.👉 Java Portal

