Sobes.tech
Junior — Middle

Pode explicar o mecanismo de adição de elementos na estrutura de dados HashSet?

sobes.tech IA

Resposta da IA

HashSet em Java (e Android) é implementado com base em HashMap. Quando adiciona um elemento ao HashSet, o seguinte acontece:

  1. O código hash do elemento é calculado usando o método hashCode().
  2. Com base no código hash, o índice da caixa (bucket) no array interno é determinado.
  3. Se já houver elementos na caixa, uma comparação com equals() é feita para verificar se o elemento já existe (para evitar duplicados).
  4. Se o elemento não existir, ele é adicionado à caixa.

Assim, o HashSet garante a unicidade dos elementos e acesso rápido por meio de hashing.

Exemplo de adição:

HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
set.add("apple"); // não será adicionado, pois "apple" já existe