Come utilizzare HashSet in Java?

Come Utilizzare Hashset In Java



Java ha una classe di raccolta chiamata HashSet che implementa l'interfaccia Set che utilizza una tabella hash per l'archiviazione. Viene utilizzato per mantenere una raccolta di elementi distinti in qualsiasi disposizione. Il vantaggio principale dell'utilizzo di HashSet è che consente un rapido accesso agli elementi, poiché utilizza l'hashing per archiviare gli elementi. HashSet è ideale per rimuovere duplicati e trovare elementi comuni tra due set.

Questa guida illustrerà HashSet insieme a possibili esempi in Java.

Come utilizzare HashSet in Java?

Per utilizzare HashSet in Java, importa prima la classe HashSet. Successivamente, crea un oggetto HashSet e aggiungi elementi utilizzando il ' aggiungere() ' metodo. Utilizzare la funzione remove() per eliminare un membro di HashSet.







Gli utenti possono anche utilizzare il metodo contains() per calcolare se esiste un elemento in HashSet. Infine, per scorrere gli elementi in HashSet, utilizzare un ciclo for-each.



Ecco alcuni esempi di come utilizzare HashSet in Java:



Esempio 1: rimozione di duplicati da un ArrayList
Un caso d'uso comune per HashSet è rimuovere i duplicati da una raccolta. Ecco un esempio di come utilizzare HashSet per rimuovere i duplicati da un ArrayList:





importare Giava. utile . Lista di array ;
importare Giava. utile . Set di hash ;

pubblico classe RemoveDuplicatesEsempio {
pubblico statico vuoto principale ( Corda [ ] arg ) {
ArrayList listWithDuplicates = nuovo Lista di array ( ) ;
listWithDuplicates. aggiungere ( 'mela' ) ;
listWithDuplicates. aggiungere ( 'banana' ) ;
listWithDuplicates. aggiungere ( 'arancia' ) ;
listWithDuplicates. aggiungere ( 'mela' ) ;
listWithDuplicates. aggiungere ( 'arancia' ) ;

HashSet setWithoutDuplicates = nuovo Set di hash ( listWithDuplicates ) ;
ArrayList listWithoutDuplicates = nuovo Lista di array ( setWithoutDuplicates ) ;

Sistema. fuori . println ( 'Elenco con duplicati: ' + listWithDuplicates ) ;
Sistema. fuori . println ( 'Elenco senza duplicati: ' + listWithoutDuplicates ) ;
}
}

Di seguito si riporta la descrizione del suddetto codice:

  • Innanzitutto, crea un ArrayList di stringhe con duplicati.
  • Quindi, crea un HashSet da ArrayList. È perché un HashSet può contenere solo elementi univoci, questo rimuove efficacemente i duplicati.
  • Alla fine, crea un nuovo ArrayList da HashSet per ottenere un elenco senza duplicati.

Produzione



L'output mostra che la duplicazione è stata rimossa dall'elenco.

Esempio 2: ricerca di elementi comuni tra due insiemi
Un altro caso d'uso per HashSet è trovare elementi comuni tra due set. Ecco un esempio di come utilizzare HashSet per trovare elementi comuni tra due insiemi:

importare Giava. utile . Set di hash ;

pubblico classe FindCommonElementsExample { // Specifica il nome della classe
pubblico statico vuoto principale ( Corda [ ] arg ) {
HashSet set1 = nuovo Set di hash ( ) ;
set1. aggiungere ( 1 ) ;
set1. aggiungere ( 2 ) ; // Aggiungi valori qui
set1. aggiungere ( 3 ) ;

HashSet set2 = nuovo Set di hash ( ) ;
set2. aggiungere ( 2 ) ;
set2. aggiungere ( 3 ) ; // Aggiungi valori qui
set2. aggiungere ( 4 ) ;

HashSet elementi comuni = nuovo Set di hash ( set1 ) ;
elementi comuni. conservaTutto ( set2 ) ;

Sistema. fuori . println ( 'Imposta 1: ' + set1 ) ;
Sistema. fuori . println ( 'Imposta 2: ' + set2 ) ;
Sistema. fuori . println ( 'Elementi comuni: ' + elementi comuni ) ;
}
}

La spiegazione è riportata di seguito:

  • Per prima cosa, crea due oggetti HashSet e aggiungi loro alcuni numeri interi.
  • Quindi, crea un nuovo oggetto HashSet e aggiungi tutti gli elementi da set1 ad esso.
  • Successivamente, chiama il metodo retainAll() su questo nuovo oggetto HashSet, passando set2 come argomento.
  • Rimuove efficacemente tutti gli elementi dal nuovo HashSet che non sono in set2, lasciando solo gli elementi comuni.

Produzione

L'output mostra che sono stati trovati elementi comuni tra due insiemi.

Conclusione

HashSet è una potente classe di raccolta in Java utilizzata per memorizzare un insieme di elementi univoci senza un ordine particolare. Fornisce metodi come ' aggiungere() ”, “ rimuovere() ', E ' contiene() ” per aggiungere, rimuovere e verificare la presenza di elementi nell'HashSet. Itera sugli elementi ed è semplice con un ciclo for-each. Implementando i metodi hashCode() e equals(), gli utenti possono anche utilizzare oggetti personalizzati in un HashSet.

Questa guida ha trattato tutti i possibili esempi per utilizzare HashSet in Java.