Heim >Java >javaLernprogramm >Unterschied zwischen Liste, Set und Karte in Java
Java java.util
Paket enthält die Collection
-Krinne, die sich in mehrere Subinterfaces und Klassen verzweigt, einschließlich List
, Set
und Map
. Dieser Artikel verdeutlicht die Unterscheidungen zwischen diesen drei Kerndatenstrukturen.
Verständnis der List
-Schingrenz
List
, eine Unterabmesser von Collection
, bietet Methoden zum Einfügen, Aktualisieren, Löschen und Durchsuchen von Elementen. Wichtig ist, dass List
doppelte Elemente ermöglicht und die Einfügungsreihenfolge beibehält. Nullelemente sind ebenfalls erlaubt.
List
Schnittstelle Beispiel:
<code class="language-java">import java.util.*; public class ListExample { public static void main (String args[]) { List<string> mylist = new ArrayList<>(); mylist.add("James Bond"); mylist.add("Superman"); mylist.add("Spiderman"); for(String superhero : mylist) System.out.println(superhero); } }</string></code>
Ausgabe:
<code>James Bond Superman Spiderman</code>
Verständnis der Set
-Schingrenz
Set
, ein anderes Collection
-Subgretung, liegt innerhalb des java.util
-Pakets. Ein definierendes Merkmal von Set
ist die Ablehnung doppelter Elemente; Es werden nur eindeutige Werte gespeichert. Einfügungsreihenfolge ist nicht garantiert.
Schnittstelle Beispiel: Set
<code class="language-java">import java.util.*; public class MySet { public static void main (String args[]) { Set<string> setmyalp = new HashSet<>(); setmyalp.add("A"); setmyalp.add("B"); setmyalp.add("C"); setmyalp.add("D"); setmyalp.add("E"); System.out.println(setmyalp); } }</string></code>
Ausgabe:
<code>[A, B, C, D, E] (Order may vary)</code>
Verständnis der -Schingrenz Map
gefundene Grenzfläche speichert Daten in Schlüsselwertpaaren. Jeder Schlüssel ist eindeutig und wird verwendet, um seinen zugehörigen Wert abzurufen. Duplizierte Schlüssel sind nicht erlaubt. Einfügungsreihenfolge ist nicht garantiert. Map
java.util
Schnittstelle Beispiel: Map
<code class="language-java">import java.util.*; public class MyMap { public static void main (String args[]) { Map<string string> mapvalue = new HashMap<>(); mapvalue.put("Fruit", "Apple"); mapvalue.put("Vegetable", "Potato"); mapvalue.put("Nut", "Groundnut"); for(Map.Entry<string string> me : mapvalue.entrySet()) { System.out.println(me.getKey() + " " + me.getValue()); } } }</string></string></code>Ausgabe:
<code>Fruit Apple Vegetable Potato Nut Groundnut (Order may vary)</code>Schlüsselunterschiede zwischen
, und Schlussfolgerung häufig gestellte Fragen (FAQs) Paket: Nullwerte: doppelte Werte: Nur List
Schnittstellen Set
Map
Feature
List
Set
Map
Duplicates
Allowed
Not Allowed
Not Allowed (for keys)
Insertion Order
Maintained
Not Guaranteed
Not Guaranteed
Null Values
Multiple allowed
Only one allowed
One null key allowed, multiple null values
Implementing Classes
ArrayList
, LinkedList
, etc.
HashSet
, LinkedHashSet
, TreeSet
, etc.
HashMap
, LinkedHashMap
, TreeMap
, etc.
Element Access
By index using
get()
methodNo direct index access
By key using
get()
method
Use Case
Ordered collections, sequences
Unique elements, membership testing
Key-value associations, lookups
Iteration
ListIterator
Iterator
keySet()
, values()
, entrySet()
List
, Set
und Map
sind grundlegende Java -Schnittstellen, die unterschiedliche Möglichkeiten zur Verwaltung von Datensammlungen bieten. Die Wahl hängt vollständig von den spezifischen Anforderungen Ihrer Anwendung ab, unter Berücksichtigung von Faktoren wie der Notwendigkeit geordneter Elemente, doppelter Zulage und der Art des erforderlichen Datenzugriffs.
List
, Set
und Map
gehören zum java.util
-Paket. List
Ermöglicht mehrere Nulls; Set
erlaubt nur einen; Map
Ermöglicht einen Nullschlüssel und mehrere Nullwerte. List
Implementierungen: ArrayList
und LinkedList
sind gemeinsame Implementierungen. List
erlaubt Duplikatwerte. get()
Methode: Nur List
und Map
(für Werte über Tasten) bieten direkten Elementzugriff nach Index oder Schlüssel.
Das obige ist der detaillierte Inhalt vonUnterschied zwischen Liste, Set und Karte in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!