class HashSet<E> реализует
interface Set<E>
HashSet содержит неповторяющиеся коллекцию элементов.
HashSet содержит элементы без сортировки.
HashSet позволяет быстро определить, есть такой элемент или нет (быстро потому что, использует индекс, который вычисляется из хэш-кода элемента).
HashSet имеет методы
Add,
Remove,
Contains, но поскольку он использует хэш-реализацию, эти операции занимают
1 действие (методы
Contains и
Remove в
ArrayList занимают
n действий.)
HashSet не синхронизирован. Если несколько потоков одновременно обращаются к хеш-набору, и хотя бы один из потоков изменяет
HashSet, он должен быть синхронизирован внешне. Обычно это достигается синхронизацией с помощью метода
Collections.synchronizedSet:
Java
Set mySet1 = Collections.synchronizedSet( new HashSet(...) );