Слайд 18
![Классы HashSet, TreeSet, LinkedHashSet Класс HashSet наследуется от абстрактного суперкласса AbstractSet](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1290964/slide-17.jpg)
Классы HashSet, TreeSet, LinkedHashSet
Класс HashSet наследуется от абстрактного суперкласса AbstractSet и реализует интерфейс Set,
используя хэш-таблицу для хранения коллекции. Ключ (хэш-код) используется вместо индекса для доступа к данным, что значительно ускоряет поиск определенного элемента.
В классе HashSet четыре конструктора:
Hashset () — создает пустой объект с показателем загруженности 0,75;
HashSet (int capacity) — создает пустой объект с начальной емкостью capacity и показателем загруженности 0,75;
HashSet (int capacity, float loadFactor) — создает пустой объект с начальной емкостью capacity и показателем загруженности loadFactor ;
HashSet (Collection coll) — создает объект, содержащий все элементы коллекции coll , с емкостью, равной удвоенному числу элементов коллекции coll , но не менее 11, и показателем загруженности 0,75.
Класс TreeSet реализован как бинарное дерево поиска, значит, его элементы хранятся в упорядоченном виде. Это значительно ускоряет поиск нужного элемента. Обработка операций удаления и вставки объектов происходит медленнее, чем в хэш-множествах, но быстрее, чем в списках. Класс TreeSet полностью реализует интерфейс SortedSet
В классе TreeSet четыре конструктора:
TreeSet () — создает пустой объект с естественным порядком элементов;
TreeSet (Comparator с) — создает пустой объект, в котором порядок зад-ся объектом сравнения с;
TreeSet (Collection coll) — создает объект, содержащий все элементы коллекции coll , с естественным порядком ее элементов;
TreeSet (SortedMap sf) — создает объект, содержащий все эл-ты отображения sf , в том же порядке.
TreeSet коллекция которая позволяет хранить объекты в отсортированном виде. Для собственных классов необходимо реализовать интерфейс Comparable или Comparator, в противном случае, при добавлении второго элемента вы получите ошибку: cannot be cast to java.lang.Comparable