Основы Java. Урок 085. ArrayList. Метод set, remove.
Java 792. Что вы знаете о коллекциях типа Set?
Set (множество) в Java - это коллекция, которая хранит уникальные элементы в неупорядоченном виде. Элементы, добавленные в Set, должны быть уникальными, то есть Set не может содержать дубликаты. Set в Java является интерфейсом, который реализует коллекцию, содержащую только уникальные элементы. Он представлен классами HashSet, TreeSet и LinkedHashSet. HashSet не содержит дубликатов и не гарантирует порядок хранения элементов. TreeSet хранит элементы в отсортированном порядке, который может быть настраиваемым...
Под "капотом" HashSet
HashSet в Java представляет собой коллекцию, которая не допускает дублирования элементов и не гарантирует порядок хранения элементов. Внутри HashSet используется HashMap, где ключи - это элементы коллекции, а значения - это заглушки (dummy values), которые используются для эффективного хранения элементов. Когда элемент добавляется в HashSet, он сначала проверяется на наличие в HashMap. Если элемент уже присутствует в HashMap, то он не добавляется в HashSet. Если элемент отсутствует в HashMap, то он добавляется в HashMap как ключ с заглушкой в качестве значения, а затем ключ добавляется в HashSet...