Clasa java.util.HashSet implementează interfața java.util.Set. Instanțele acestei clase sunt mulțimi implementate ca tabele de dispersie. Datorită acestui fapt, operațiile de căutare și punere (adăugare) a unui element au complexitatea O(1).
Clasa HashSet extinde clasa java.util.AbstractSet, deci moștenește
toate metodele acesteia. La fel ca în cazul claselor ArrayList și
Vector, capacitatea tabelului de elemente este variabilă: la
construirea instanței clasei HashSet se alocă un tablou de referințe la
obiecte cu o anumită capacitate inițială. Dacă însă, în timpul
executării programului, factorul de umplere depășește o valoare
limită, se alocă automat un nou tablou de capacitate mai mare. Atât
capacitatea inițială, cât și valoarea limită a factorului de umplere
pot fi impuse prin program sau pot fi date implicit.
Clasa HashSet are următorii constructori: public HashSet() - construiește o tabelă de dispersie cu capacitate inițială implicită și cu limita factorului de umplere 0.75; public HashSet(Collection c) - construiește o tabelă de dispersie care conține toate elementele colecției c, are capacitatea dublă față de numărul de elemente din c, iar factorul de umplere limită este 0.75; public HashSet(int initialCapacity, float loadFactor) - construiește o tabelă de dispersie, având capacitatea inițială și factorul de umplere limită date ca parametri; public HashSet(int initialCapacity) - construiește o tabelă de dispersie cu capacitate inițiala dată și cu factorul de umplere limită 0.75. Clasa HashSet mostenește toate metodele clasei AbstractSet,
dar are următoarele metode redefinite: Exemplu |