Java-Sammlung/Kartenauswahl

1.Sammlungsschnittstelle

Die Collection-Schnittstelle implementiert die Iterator-Schnittstelle, sodass alle Implementierungsklassen der Collection-Schnittstelle Iteratoren für die Iteration verwenden können.

Die Collection-Schnittstelle verfügt hauptsächlich über zwei wichtige Unterschnittstellen: List und Set.
Die Hauptfunktionen von List sind: Reihenfolge, wiederholbare Werte und Unterstützung für den Indexzugriff.
Das Hauptmerkmal von Set ist: Der Wert kann nicht wiederholt werden.

Gemeinsame Implementierungsklassen von List:

  1. Vektor : Dynamische Array-Implementierung, threadsicher .
  2. ArrayList : Dynamische Array-Implementierung, nicht threadsicher, hohe Effizienz .
  3. LinkedList : Implementierung einer doppelt verknüpften Liste, nicht threadsicher, hohe Additions- und Löscheffizienz .

Bei der Listenauswahl wird standardmäßig ArrayList berücksichtigt. Wenn viele Hinzufügungen und Löschungen vorhanden sind, wählen Sie LinkedList. Wenn viele Zugriffsvorgänge vorhanden sind, wählen Sie Vector (Thread-sicher) oder ArrayList (nicht Thread-sicher).

Legen Sie allgemeine Implementierungsklassen fest:

  1. HashSet : Die Implementierung ist dieselbe wie bei HashMap, die Iterationsreihenfolge ist jedoch nicht garantiert .
  2. LinkedHashSet : Die Implementierung ist dieselbe wie bei LinkedHashSet, wodurch sichergestellt werden kann, dass die Iterationsreihenfolge und die Einfügereihenfolge identisch sind .
  3. TreeSet : Rot-Schwarz-Baum-Implementierung, Vergleichsregeln können entsprechend dem übergebenen Comparator-Objekt festgelegt werden und die Elemente werden in der Reihenfolge der Regeln angeordnet .

Wenn Sie ein schnelles Set benötigen, das nichts mit Ordnungsproblemen zu tun hat, wählen Sie HashSet. Wenn Sie das Set sortieren müssen, wählen Sie TreeSet. Wenn Sie in derselben Reihenfolge lesen und eingeben müssen, wählen Sie LinkedHashSet.
Fügen Sie hier eine Bildbeschreibung ein

2. Kartenschnittstelle

Die Map-Schnittstelle implementiert die Iterator-Schnittstelle nicht, daher kann der Iterator nicht für die Iteration verwendet werden. Die Iteration sollte „entrySet“ (den Schlüssel-Wert-Paarsatz abrufen) und „keySet“ (den Schlüsselsatz abrufen) verwenden.

Allgemeine Map-Implementierungsklassen:

  1. HashMap : Implementierung durch Hash-Tabelle + verknüpfte Liste + rot-schwarzer Baum mit hoher Effizienz.
  2. LinkedHashMap : Basierend auf HashMap wird eine doppelt verknüpfte Liste hinzugefügt, um die Reihenfolge beim Hinzufügen von Elementen beizubehalten und sicherzustellen, dass die Iterationsreihenfolge mit der Einfügereihenfolge übereinstimmt .
  3. TreeMap : Rot-Schwarz-Baum-Implementierung, Vergleichsregeln können basierend auf dem eingehenden Comparator-Objekt festgelegt werden und die Elemente werden in der Reihenfolge der Regeln angeordnet .
  4. HashTable : Die Implementierung ist konsistent mit HashMap, threadsicher und null kann nicht als Schlüssel oder Wert verwendet werden.
  5. Eigenschaften : Wird hauptsächlich zur Verarbeitung von .properties-Konfigurationsdateien verwendet.

Fügen Sie hier eine Bildbeschreibung ein

Supongo que te gusta

Origin blog.csdn.net/weixin_44866921/article/details/132458167
Recomendado
Clasificación