1. Was ist eine Sammlung?
Ein Container zum Speichern von Objekten, um die Bedienung mehrerer Objekte zu erleichtern Sammlungen werden zum Speichern von Objekten verwendet. Eine der am häufigsten verwendeten Methoden.
Das Erscheinungsbild von Sammlungen besteht darin, Objekte aufzunehmen. Sammlungen können Objekte jeglichen Typs speichern und eine variable Länge haben. Im Programm ist es möglicherweise nicht möglich, im Voraus zu wissen, wie viele Objekte benötigt werden. Wenn also ein Array zum Speichern der Objekte verwendet wird, ist die Länge schwer zu definieren, und Sammlungen lösen dieses Problem.
2. Der Unterschied zwischen Sammlungen und Arrays
Arrays und Sammlungsklassen sind beide Container
Die Länge von Arrays ist fest und die Länge von Sammlungen ist variabel. Grundlegende Datentypen können in Arrays gespeichert werden, und Sammlungen können nur Objekte speichern. Der in Arrays gespeicherte Datentyp ist Single, und Objekte jeden Typs können in Sammlungen gespeichert werden.
Funktionen der Sammlungsklasse
werden zum Speichern von Objekten verwendet, die Länge ist variabel und es können verschiedene Arten von Objekten gespeichert werden.
2.1. Nachteile von Arrays
Ein Datencontainer mit einem einzigen Speichertyp, komplexe Operation (ein Array ist unveränderlich, sobald es deklariert ist) CRUD
1.3. Klassifizierung von Sammlungen
Was Sammlungen bewirken
1: Objekte zu Sammlungen hinzufügen
2: Objekte aus Sammlungen entfernen
3 : Suchen Sie ein Objekt aus einer Sammlung
4: Ändern Sie ein Objekt aus einer Sammlung durch Hinzufügen, Löschen, Ändern und Überprüfen
Hinweis: Sammlungen und Arrays speichern Verweise auf Objekte und nicht auf Objekte selbst
Java-Ingenieure haben verschiedene Container definiert, es gibt jedoch einige Gemeinsamkeiten, die extrahiert werden können. Schließlich wird eine Schnittstelle der obersten Ebene extrahiert und ein Sammlungsframework gebildet. Wie lernt man? Beginnen Sie natürlich mit der obersten Ebene, die die häufigsten und grundlegendsten Verhaltensweisen enthält. Für eine bestimmte Verwendung müssen Sie einen bestimmten Behälter auswählen. Warum? Weil die Dinge, die kontinuierlich extrahiert werden, möglicherweise keine Objekte erstellen können und es mehr Methoden für Unterklassenobjekte gibt. Was ist also die oberste Ebene der Sammlung? Sie heißt Sammlung
Sammlungsrahmensystem
Sammlung: Einspaltige Sammlung
Liste: Es gibt eine Speicherreihenfolge, die wiederholt werden kann
Aufgrund der Implementierung des Arrays handelt es sich um das Array
容 und kopieren Sie Elemente, wenn sie gelöscht werden. So langsam. Arrays können direkt nach Index durchsucht werden
, sodass die Suche schneller ist
LinkedList: Verknüpfte Listenimplementierung, schnelles Hinzufügen und Löschen, langsame Suche
Einfach nachgeben Es reicht damit sich ein Element an sich selbst erinnert
Lassen Sie beim Löschen das vorherige Element sich an das nächste Element erinnern
und das letztere Element an das vorherige Element erinnern
Die Rate ist höher, aber die Abfrage muss einzeln durchlaufen werden, sodass die Effizienz
geringer ist
Vektor: Gleiches Prinzip wie ArrayList, aber threadsicher und etwas weniger effizient
Es ist das gleiche wie bei ArrayList, aber die Thread-Sicherheitsfrage
stellt Fragen, sodass die Effizienz etwas geringer ist
SET: keine Speicherreihenfolge, nicht wiederholt
Hashset
aus
HashMap
TreeMap
HashTable
LinkedHashMap
Warum gibt es so viele Sammelbehälter? Diese Speichermethode ist unterschiedlich wird als Datenstruktur bezeichnet
Beachten Sie, dass Sammlungen und Arrays Verweise auf Objekte speichern.
Wann welche Sammlung verwendet werden soll