Sobes.tech
Junior — Middle

Kunt u het mechanisme uitleggen van het toevoegen van elementen aan de gegevensstructuur HashSet?

sobes.tech AI

Antwoord van AI

HashSet in Java (en Android) wordt geïmplementeerd op basis van HashMap. Wanneer je een element toevoegt aan een HashSet, gebeurt het volgende:

  1. De hash-code van het element wordt berekend met behulp van de methode hashCode().
  2. Op basis van de hash-code wordt de index van de bak (bucket) in de interne array bepaald.
  3. Als er al elementen in de bak zijn, wordt er vergeleken met equals() om te controleren of het element al bestaat (om duplicaten te voorkomen).
  4. Als het element niet bestaat, wordt het toegevoegd aan de bak.

Op deze manier zorgt HashSet voor de uniciteit van de elementen en snelle toegang door hashing.

Voorbeeld van toevoegen:

HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
set.add("apple"); // wordt niet toegevoegd, omdat "apple" al bestaat