Heim  >  Artikel  >  Java  >  Java-Sammlung

Java-Sammlung

高洛峰
高洛峰Original
2016-11-30 15:07:281226Durchsuche

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

Java-Sammlung

Sammlung: Einspaltige Sammlung

Liste: Es gibt eine Speicherreihenfolge, die wiederholt werden kann ArrayList: Array-Implementierung, schnelle Suche, langsame Suche und Löschung

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

Java-Sammlung

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn