Como usar o HashSet em Java?

Como Usar O Hashset Em Java



Java tem uma classe de coleção chamada HashSet que implementa a interface Set que usa uma tabela de hash para armazenamento. É usado para manter uma coleção de elementos distintos em qualquer arranjo. A principal vantagem de usar o HashSet é que ele permite acesso rápido aos elementos, pois usa hashing para armazenar os elementos. HashSet é ideal para remover duplicatas e encontrar elementos comuns entre dois conjuntos.

Este guia irá ilustrar o HashSet juntamente com possíveis exemplos em Java.

Como usar o HashSet em Java?

Para usar HashSet em Java, primeiro importe a classe HashSet. Depois disso, crie um objeto HashSet e adicione elementos utilizando o “ adicionar() ” método. Use a função remove() para eliminar um membro do HashSet.







Os usuários também podem utilizar o método contains() para calcular se existe um elemento no HashSet. Por fim, para iterar os elementos no HashSet, use um loop for-each.



Aqui estão alguns exemplos de como usar o HashSet em Java:



Exemplo 1: Removendo Duplicatas de uma ArrayList
Um caso de uso comum para HashSet é remover duplicatas de uma coleção. Aqui está um exemplo de como usar o HashSet para remover duplicatas de um ArrayList:





importar Java. útil . ArrayList ;
importar Java. útil . HashSet ;

público aula RemoveDuplicatesExample {
público estático vazio principal ( Corda [ ] argumentos ) {
ArrayList listWithDuplicates = novo ArrayList ( ) ;
listWithDuplicates. adicionar ( 'maçã' ) ;
listWithDuplicates. adicionar ( 'banana' ) ;
listWithDuplicates. adicionar ( 'laranja' ) ;
listWithDuplicates. adicionar ( 'maçã' ) ;
listWithDuplicates. adicionar ( 'laranja' ) ;

HashSet setWithoutDuplicates = novo HashSet ( listaComDuplicados ) ;
ArrayList listWithoutDuplicates = novo ArrayList ( definirSemDuplicados ) ;

Sistema. fora . println ( 'Lista com duplicados: ' + listaComDuplicados ) ;
Sistema. fora . println ( 'Lista sem duplicatas: ' + listWithoutDuplicates ) ;
}
}

A descrição do código acima é dada abaixo:

  • Primeiro, crie um ArrayList de strings com duplicatas.
  • Em seguida, crie um HashSet a partir do ArrayList. É porque um HashSet pode conter apenas elementos exclusivos, isso efetivamente remove as duplicatas.
  • No final, crie um novo ArrayList a partir do HashSet para obter uma lista sem duplicatas.

Saída



A saída mostra que a duplicação foi removida da lista.

Exemplo 2: Encontrar elementos comuns entre dois conjuntos
Outro caso de uso para HashSet é encontrar elementos comuns entre dois conjuntos. Aqui está um exemplo de como usar o HashSet para encontrar elementos comuns entre dois conjuntos:

importar Java. útil . HashSet ;

público aula FindCommonElementsExample { // Especifica o nome da classe
público estático vazio principal ( Corda [ ] argumentos ) {
HashSet set1 = novo HashSet ( ) ;
conjunto1. adicionar ( 1 ) ;
conjunto1. adicionar ( 2 ) ; // Adicione valores aqui
conjunto1. adicionar ( 3 ) ;

HashSet set2 = novo HashSet ( ) ;
conjunto2. adicionar ( 2 ) ;
conjunto2. adicionar ( 3 ) ; // Adicione valores aqui
conjunto2. adicionar ( 4 ) ;

HashSet commonElements = novo HashSet ( set1 ) ;
elementos comuns. retertudo ( set2 ) ;

Sistema. fora . println ( 'Conjunto 1: ' + set1 ) ;
Sistema. fora . println ( 'Conjunto 2:' + set2 ) ;
Sistema. fora . println ( 'Elementos comuns: ' + elementos comuns ) ;
}
}

A explicação é dada abaixo:

  • Primeiro, crie dois objetos HashSet e adicione alguns inteiros a eles.
  • Em seguida, crie um novo objeto HashSet e adicione todos os elementos de set1 a ele.
  • Depois disso, chame o método reterAll() neste novo objeto HashSet, passando set2 como argumento.
  • Ele efetivamente remove quaisquer elementos do novo HashSet que não estejam em set2, deixando apenas os elementos comuns.

Saída

A saída mostra que elementos comuns foram encontrados entre dois conjuntos.

Conclusão

HashSet é uma classe de coleção poderosa em Java usada para armazenar um conjunto de elementos exclusivos em nenhuma ordem específica. Ele fornece métodos como “ adicionar() ”, “ remover() ', e ' contém() ” para adicionar, remover e verificar a presença de elementos no HashSet. Ele itera sobre os elementos e é simples com um loop for-each. Ao implementar os métodos hashCode() e equals(), os usuários também podem usar objetos personalizados em um HashSet.

Este guia cobriu todos os exemplos possíveis para usar o HashSet em Java.