Junior
Welche Sammlungen gibt es in Java?
sobes.tech KI
Antwort von AI
In Java gibt es die folgenden grundlegenden Schnittstellen für Sammlungen, die im Java Collections Framework enthalten sind:
-
Collection: Basisschnittstelle, die allgemeine Operationen für Gruppen von Objekten definiert. Von ihr erben die Unterinterfaces:List: Geordnete Sammlung (Sequenz). Elemente können sich wiederholen. Unterstützt Zugriff nach Index.ArrayList: Dynamisches Array. Gut für schnellen Zugriff nach Index und Hinzufügen am Ende. Langsam beim Einfügen/Entfernen in der Mitte.LinkedList: Doppelt verkettete Liste. Gut für Einfüge-/Entfergvorgänge am Anfang oder Ende. Langsam beim Zugriff nach Index.Vector: Synchronisierte Version vonArrayList. Wird als veraltet angesehen.Stack: Erbt vonVector, implementiert das Verhalten eines Stacks (LIFO).
Set: Sammlung, die nur eindeutige Elemente enthält. Garantiert keine Reihenfolge.HashSet: Implementiert mit Hash-Tabelle. Am schnellsten bei Hinzufügen, Entfernen und Überprüfung der Existenz. Garantiert keine Reihenfolge.LinkedHashSet: Implementiert als Hash-Tabelle + verkettete Liste. Garantiert Einfügereihenfolge.TreeSet: Implementiert mit rotem-schwarzem Baum. Speichert Elemente in sortierter Reihenfolge. Langsamer alsHashSet, aber schneller alsLinkedHashSetbei Bereichssuchen.
Queue: Sammlung, die für die Speicherung von Elementen vor der Verarbeitung entwickelt wurde (FIFO - First-In, First-Out).PriorityQueue: Elemente werden entsprechend ihrer natürlichen Ordnung oder eines Comparators gespeichert. Das Element mit höchster Priorität wird extrahiert.Deque: (Double Ended Queue) Unterstützt Einfügen und Entfernen an beiden Enden.ArrayDeque: Implementierung von Deque basierend auf Array. Effizienter alsLinkedListals Queue/Stack.
-
Map: Sammlung, die Schlüssel-Wert-Paare speichert. Schlüssel sind eindeutig.HashMap: Implementiert mit Hash-Tabelle. Am schnellsten bei Hinzufügen, Entfernen und Überprüfung der Existenz. Garantiert keine Reihenfolge der Schlüssel.LinkedHashMap: Implementiert als Hash-Tabelle + verkettete Liste. Garantiert Einfügereihenfolge oder Zugriff.TreeMap: Implementiert mit rotem-schwarzem Baum. Speichert Schlüssel-Wert-Paare in sortierter Reihenfolge nach Schlüsseln. Langsamer alsHashMap.HashTable: Synchronisierte Version vonHashMap. Wird als veraltet angesehen.
Es gibt auch veraltete Klassen, die nicht zum JCF gehören, aber manchmal vorkommen:
VectorStackHashtableEnumeration(Schnittstelle)