Διαφορά μεταξύ λίστας και σετ Java

Συγγραφέας: Laura McKinney
Ημερομηνία Δημιουργίας: 2 Απρίλιος 2021
Ημερομηνία Ενημέρωσης: 15 Ενδέχεται 2024
Anonim
Πουλόβερ #υπερμεγέθη με καλτσοδέτα μέρος 2 Μανίκι λαιμόκοψη με ραφές 👍⬇️
Βίντεο: Πουλόβερ #υπερμεγέθη με καλτσοδέτα μέρος 2 Μανίκι λαιμόκοψη με ραφές 👍⬇️

Περιεχόμενο


Η διεπαφή λίστας και σετ επεκτείνει τη συλλογή. Και οι δύο διατηρούν τη συλλογή στοιχείων ή αντικειμένων. Αλλά, η κύρια διαφορά που τα διακρίνει μεταξύ τους είναι η Λίστα είναι μια συλλογή στοιχείου που έχει παραγγελθεί, τα στοιχεία προστίθενται ή αφαιρούνται ή προσφέρονται με τη βοήθεια μιας μεταβλητής δείκτη. Από την άλλη πλευρά, το Set είναι μια συλλογή αντικειμένων όπου η συλλογή δεν επιτρέπει διπλότυπα στοιχεία σε αυτήν. Ας μελετήσουμε μερικές ακόμα διαφορές μεταξύ των διεπαφών List και Set με τη βοήθεια του πίνακα σύγκρισης που φαίνεται παρακάτω.

  1. Συγκριτικό διάγραμμα
  2. Ορισμός
  3. Βασικές διαφορές
  4. συμπέρασμα

Συγκριτικό διάγραμμα

Βάση σύγκρισηςΛίστα Σειρά
ΒασικόςΟ κατάλογος διατηρεί την ακολουθία των στοιχείων που είναι αποθηκευμένα σε μια λίστα.Το σύνολο δεν διατηρεί ιδιαίτερα την τάξη εισαγωγής, αλλά το Linked HashSet διατηρεί την εντολή εισαγωγής.
Αναπαραγωγή σε πανομοιότυποΗ λίστα μπορεί να έχει διπλότυπα στοιχεία σε αυτήν.Η μέθοδος add () επιστρέφει την τιμή false αν προσπαθήσετε να εισαγάγετε τα διπλότυπα στοιχεία.
ΜέθοδοιΕκτός από τις μεθόδους που ορίζονται στη Συλλογή, η λίστα ορίζει μερικές από τις δικές της μεθόδους.Το σύνολο δεν καθορίζει καμία πρόσθετη μέθοδο.
Εκτέλεση Ο κατάλογος υλοποιείται από τα ArrayList, LinkedList, CopyOnWriteArrayList, Vector, Stack.Το σετ υλοποιείται από τα HashSet, LinkedHashSet, EnumSet, TreeSet, CopyOnWriteArraySet.


Ορισμός της λίστας

Η διεπαφή καταλόγου επεκτείνει τη διεπαφή συλλογής Μια λίστα είναι μια ταξινομημένη συλλογή στοιχείων ή αντικειμένων. Σε αντίθεση με το Set, η Λίστα ενδέχεται να περιέχει διπλά στοιχεία. Εκτός από τις μεθόδους που ορίζονται στη Λίστα Συλλογών, καθορίζονται μερικές μέθοδοι της δικής της, όπως η μέθοδος get () και set (). Οι μέθοδοι add () και remove () κληρονομούνται από τη συλλογή που προσθέτει ή αφαιρεί το καθορισμένο στοιχείο από το ευρετήριο που καθορίζεται στο όρισμα της μεθόδου. Ο κατάλογος είναι ένα είδος πίνακα των οποίων το μέγεθος αυξάνεται καθώς προσθέτουμε στοιχεία στη λίστα.

Η λίστα δεν καθορίζει κάποια μέθοδο για να λειτουργεί με το εύρος των δεικτών σε μια λίστα. Ορίζει μια μέθοδο υπο-λίστας (), η οποία επιστρέφει μια υπο-λίστα από την αρχική λίστα ενός καθορισμένου εύρους. Οι αλλαγές που κάνετε στην υπο-λίστα εμφανίζονται επίσης στην αρχική λίστα. Η διεπαφή λίστας υλοποιείται από τα ArrayList, LinkedList, CopyOnWriteArrayList, Vector, Stack.


Ορισμός του συνόλου

Ορισμός διεπαφής επεκτείνει τη διεπαφή συλλογής. Ορισμός διεπαφής είναι μια συλλογή ή μια ομάδα αντικειμένων που δεν περιέχει κανένα αντικείμενο σε αυτήν. Αυτό σημαίνει ότι δύο αναφορές δεν μπορούν να παραπέμπουν ένα αντικείμενο ή μια αναφορά δεν μπορεί να αναφέρεται σε δύο αντικείμενα ή δεν μπορούν να αναφερθούν σε δύο αναφορές που αναφέρονται στο Null. Η σειρά ή η ακολουθία του στοιχείου δεν είναι σημαντική. Ορισμός, αλλά δεν είναι ότι απαγορεύει το παραγγελθέν σύνολο.

Η διεπαφή που έχει οριστεί δεν καθορίζει καμία μέθοδο εκτός από τη μέθοδο που ορίζεται στη συλλογή. Αντίθετα, περιορίζει τις μεθόδους συλλογής add () και addall () για να προσθέσει οποιοδήποτε αντικείμενο σε μια συλλογή. Αν προσπαθήσετε να προσθέσετε οποιοδήποτε αντικείμενο σε μια συλλογή χρησιμοποιώντας τη μέθοδο add () της συλλογής, επιστρέφει το false. Διαφορετικά, επιστρέφει αλήθεια. Ορισμός διεπαφής υλοποιείται από HashSet, LinkedHashSet, EnumSet, TreeSet, CopyOnWriteArraySet.

  1. Η ακολουθία των στοιχείων / αντικειμένων μιας συλλογής διατηρείται στη λίστα, ενώ το Set δεν διατηρεί τη σειρά των στοιχείων, αλλά υπάρχει μια εξαίρεση. Το LinkedHashSet διατηρεί τη σειρά εισαγωγής.
  2. Ο κατάλογος μπορεί να έχει διπλότυπα στοιχεία καθώς αναγνωρίζει οποιοδήποτε στοιχείο με το ευρετήριο του, αλλά το Set δεν επιτρέπει την εμφάνιση διπλών στοιχείων, καθώς δεν έχει κάποιο στοιχείο ευρετηρίου στοιχείου για τον προσδιορισμό οποιουδήποτε αντικειμένου σε μια συλλογή.
  3. Ο κατάλογος καθορίζει κάποιες μεθόδους από μόνο του, εκτός από τις μεθόδους που ορίζονται στη συλλογή. Από την άλλη πλευρά, το Set δεν καθορίζει κάποια δική του μέθοδο, αλλά περιορίζει τις μεθόδους συλλογής για να προσθέσει τυχόν διπλότυπα στοιχεία.
  4. Η λίστα υλοποιείται από διεπαφές ArrayList, LinkedList, CopyOnWriteArrayList, Vector, Stack. Από την άλλη πλευρά, το Set υλοποιείται από διασυνδέσεις HashSet, LinkedHashSet, EnumSet, TreeSet και CopyOnWriteArraySet.

Συμπέρασμα:

Η χρήση της διεπαφής Λίστα και Σετ εξαρτάται από την απαίτηση. Εάν η σειρά αντικειμένων / στοιχείων είναι σημαντική, τότε πρέπει να χρησιμοποιήσετε τη διεπαφή List. Εάν δεν χρειάζεστε διπλότυπα στοιχεία στη συλλογή σας, τότε πρέπει να χρησιμοποιήσετε τη διεπαφή Ορισμός