Ответ
Название HashSet образовано от двух ключевых концепций:
- Set: Означает, что класс реализует интерфейс
java.util.Set. КоллекцияSetгарантирует уникальность элементов — дубликаты не допускаются. - Hash: Указывает на внутреннюю реализацию.
HashSetхранит элементы в хеш-таблице, что обеспечивает высокую производительность для основных операций (add,remove,contains) — в среднем O(1).
Пример:
Set<String> uniqueNames = new HashSet<>();
uniqueNames.add("Анна");
uniqueNames.add("Борис");
uniqueNames.add("Анна"); // Дубликат игнорируется
System.out.println(uniqueNames); // [Анна, Борис] (порядок не гарантирован)
Таким образом, HashSet — это реализация интерфейса Set, использующая хеширование для эффективного хранения уникальных элементов.