Πώς να χρησιμοποιήσετε το HashSet στην Java;

Pos Na Chresimopoiesete To Hashset Sten Java



Η Java έχει μια κλάση συλλογής που ονομάζεται HashSet που υλοποιεί τη διεπαφή Set που χρησιμοποιεί έναν πίνακα κατακερματισμού για αποθήκευση. Χρησιμοποιείται για τη διατήρηση μιας συλλογής διακριτών στοιχείων σε οποιαδήποτε διάταξη. Το κύριο πλεονέκτημα της χρήσης HashSet είναι ότι επιτρέπει γρήγορη πρόσβαση σε στοιχεία, καθώς χρησιμοποιεί κατακερματισμό για την αποθήκευση των στοιχείων. Το HashSet είναι ιδανικό για την αφαίρεση διπλότυπων και την εύρεση κοινών στοιχείων μεταξύ δύο συνόλων.

Αυτός ο οδηγός θα απεικονίσει το HashSet μαζί με πιθανά παραδείγματα σε Java.

Πώς να χρησιμοποιήσετε το HashSet στην Java;

Για να χρησιμοποιήσετε το HashSet σε Java, πρώτα εισαγάγετε την κλάση HashSet. Μετά από αυτό, δημιουργήστε ένα αντικείμενο HashSet και προσθέστε στοιχεία χρησιμοποιώντας το ' Προσθήκη() 'μέθοδος. Χρησιμοποιήστε τη συνάρτηση remove() για να εξαλείψετε ένα μέλος του HashSet.







Οι χρήστες μπορούν επίσης να χρησιμοποιήσουν τη μέθοδο contain() για να υπολογίσουν εάν ένα στοιχείο υπάρχει στο HashSet. Τέλος, για να επαναλάβετε τα στοιχεία στο HashSet, χρησιμοποιήστε έναν βρόχο για κάθε.



Ακολουθούν μερικά παραδείγματα για το πώς να χρησιμοποιήσετε το HashSet σε Java:



Παράδειγμα 1: Αφαίρεση διπλότυπων από μια ArrayList
Μια συνηθισμένη περίπτωση χρήσης του HashSet είναι η κατάργηση των διπλότυπων από μια συλλογή. Ακολουθεί ένα παράδειγμα του τρόπου χρήσης του HashSet για την κατάργηση των διπλότυπων από μια ArrayList:





εισαγωγή Ιάβα. χρησιμότητα . ArrayList ;
εισαγωγή Ιάβα. χρησιμότητα . HashSet ;

δημόσιο τάξη RemoveDuplicatesExample {
δημόσιο στατικός κενός κύριος ( Σειρά [ ] args ) {
Λίστα ArrayListWithDuplicates = νέος ArrayList ( ) ;
listWithDuplicates. Προσθήκη ( 'μήλο' ) ;
listWithDuplicates. Προσθήκη ( 'μπανάνα' ) ;
listWithDuplicates. Προσθήκη ( 'πορτοκάλι' ) ;
listWithDuplicates. Προσθήκη ( 'μήλο' ) ;
listWithDuplicates. Προσθήκη ( 'πορτοκάλι' ) ;

Σύνολο HashWithoutDuplicates = νέος HashSet ( listWithDuplicates ) ;
Λίστα ArrayListWithoutDuplicates = νέος ArrayList ( setWithoutDuplicates ) ;

Σύστημα. έξω . println ( 'Λίστα με διπλότυπα: ' + listWithDuplicates ) ;
Σύστημα. έξω . println ( 'Λίστα χωρίς αντίγραφα: ' + λίσταΧωρίς διπλότυπα ) ;
}
}

Η περιγραφή του παραπάνω κώδικα δίνεται παρακάτω:

  • Αρχικά, δημιουργήστε μια ArrayList από συμβολοσειρές με διπλότυπα.
  • Στη συνέχεια, δημιουργήστε ένα HashSet από το ArrayList. Επειδή ένα HashSet μπορεί να περιέχει μόνο μοναδικά στοιχεία, αυτό καταργεί αποτελεσματικά τα διπλότυπα.
  • Στο τέλος, δημιουργήστε μια νέα ArrayList από το HashSet για να λάβετε μια λίστα χωρίς διπλότυπα.

Παραγωγή



Η έξοδος δείχνει ότι το διπλότυπο έχει αφαιρεθεί από τη λίστα.

Παράδειγμα 2: Εύρεση κοινών στοιχείων μεταξύ δύο συνόλων
Μια άλλη περίπτωση χρήσης για το HashSet είναι η εύρεση κοινών στοιχείων μεταξύ δύο συνόλων. Ακολουθεί ένα παράδειγμα του τρόπου χρήσης του HashSet για την εύρεση κοινών στοιχείων μεταξύ δύο συνόλων:

εισαγωγή Ιάβα. χρησιμότητα . HashSet ;

δημόσιο τάξη FindCommonElementsExample { // Καθορίστε το όνομα της κλάσης
δημόσιο στατικός κενός κύριος ( Σειρά [ ] args ) {
Σύνολο HashSet1 = νέος HashSet ( ) ;
σύνολο 1. Προσθήκη ( 1 ) ;
σύνολο 1. Προσθήκη ( 2 ) ; // Προσθέστε τιμές εδώ
σύνολο 1. Προσθήκη ( 3 ) ;

Σύνολο HashSet2 = νέος HashSet ( ) ;
σύνολο2. Προσθήκη ( 2 ) ;
σύνολο2. Προσθήκη ( 3 ) ; // Προσθέστε τιμές εδώ
σύνολο2. Προσθήκη ( 4 ) ;

HashSet commonElements = νέος HashSet ( σύνολο 1 ) ;
κοινά στοιχεία. διατήρησηΌλα ( σύνολο2 ) ;

Σύστημα. έξω . println ( 'Σετ 1:' + σύνολο 1 ) ;
Σύστημα. έξω . println ( 'Σετ 2:' + σύνολο2 ) ;
Σύστημα. έξω . println ( 'Κοινά στοιχεία:' + κοινά στοιχεία ) ;
}
}

Η εξήγηση δίνεται παρακάτω:

  • Πρώτα, δημιουργήστε δύο αντικείμενα HashSet και προσθέστε μερικούς ακέραιους αριθμούς σε αυτά.
  • Στη συνέχεια, δημιουργήστε ένα νέο αντικείμενο HashSet και προσθέστε όλα τα στοιχεία από το set1 σε αυτό.
  • Μετά από αυτό, καλέστε τη μέθοδο retainAll() σε αυτό το νέο αντικείμενο HashSet, περνώντας στο set2 ως όρισμα.
  • Καταργεί αποτελεσματικά τυχόν στοιχεία από το νέο HashSet που δεν βρίσκονται στο set2, αφήνοντας μόνο τα κοινά στοιχεία.

Παραγωγή

Η έξοδος δείχνει ότι έχουν βρεθεί κοινά στοιχεία μεταξύ δύο συνόλων.

συμπέρασμα

Το HashSet είναι μια ισχυρή κλάση συλλογής στην Java που χρησιμοποιείται για την αποθήκευση ενός συνόλου μοναδικών στοιχείων χωρίς συγκεκριμένη σειρά. Παρέχει μεθόδους όπως « Προσθήκη() », « αφαιρώ() ', και ' περιέχει() ” για να προσθέσετε, να αφαιρέσετε και να ελέγξετε για την παρουσία στοιχείων στο HashSet. Επαναλαμβάνεται πάνω από στοιχεία και είναι απλό με έναν βρόχο για κάθε. Εφαρμόζοντας τις μεθόδους hashCode() και equals(), οι χρήστες μπορούν επίσης να χρησιμοποιήσουν προσαρμοσμένα αντικείμενα σε ένα HashSet.

Αυτός ο οδηγός έχει καλύψει όλα τα πιθανά παραδείγματα χρήσης του HashSet σε Java.