Was sind die Unterschiede zwischen ArrayList, LinkedList und Vector?
Aug 06, 2020 pm 04:01 PM1. Analyse aus der Speicherdatenstruktur Ray: kann schnell sein Basierend auf der Suche nach Indizes, sodass die Abfrage in den meisten F?llen schnell erfolgt.
Aber wenn Sie Additions- und L?schvorg?nge ausführen m?chten, müssen Sie alle Elemente hinter das ge?nderte Element verschieben, sodass der Aufwand für Additionen und L?schungen relativ gro? ist und die Ausführungseffizienz der Additions- und L?schvorg?nge des Arrays relativ hoch ist ist niedrig. ArrayList und Vector, die Arrays als Datenspeicherstrukturen verwenden, weisen ebenfalls eine hohe Abfragegeschwindigkeit auf (kann direkt basierend auf dem Index abgerufen werden, was schneller ist als die iterative Suche), und das Hinzufügen und L?schen ist langsam.
Verknüpfte Liste: Es ist praktisch, Elemente hinzuzufügen und zu l?schen. Um ein Element hinzuzufügen oder zu l?schen, müssen Sie sich nur mit den Referenzen zwischen Knoten befassen. Wenn Sie jemanden hinzufügen oder l?schen m?chten, müssen Sie, genau wie Menschen, die sich hintereinander H?ndchen halten, nur die beiden Personen in der N?he ?ndern, um mit einer anderen Person H?ndchen zu halten. Dies hat keine Auswirkungen auf die Personen, die sich bereits an den H?nden halten. Der Ressourcen- und Zeitaufwand für die Substitution ist überall gleich. Die Suche ist jedoch umst?ndlich. Sie muss einzeln verglichen werden und kann nicht direkt anhand des Indexes durchsucht werden. LinkedList, das in einer verknüpften Listenstruktur gespeichert ist, weist ebenfalls diese Eigenschaften auf. Es ist einfach hinzuzufügen und zu l?schen, aber langsam abzufragen (bezogen auf zuf?llige Abfragen, nicht auf sequentielle Abfragen).
2. Analyse aus der Perspektive der Vererbung
Sie alle implementieren die List-Schnittstelle, was bedeutet, dass sie alle get(int location), remove(int location) usw. implementieren, um Knoten basierend abzurufen und zu l?schen auf den Indexwert ?Funktion“. (Empfohlenes Video-Tutorial:Java-Video-Tutorial)
Es ist einfach, den Wert der Array-Struktur gem?? dem Index zu ermitteln. Die Implementierung der bidirektionalen LinkedList-Liste ist ebenfalls relativ einfach Wenn der Index gro? ist, beginnen Sie mit der Suche am Anfang der Tabelle. Wenn er klein ist, beginnen Sie mit der Suche am Ende der Tabelle.
3. Analyse aus Sicht der Parallelit?tssicherheitVektor: Thread-Sicherheit ArrayList: Nicht-Thread-Sicherheit
LinkedList: Nicht-Thread-Sicherheit
Vektor: Standardm??ig , W?chst auf die doppelte L?nge des ursprünglichen Arrays. Apropos Standard bedeutet, dass er die Initialisierungsgr??e tats?chlich unabh?ngig festlegen kann.
ArrayList: Erh?ht sich automatisch um 50 % des ursprünglichen Arrays.
Das obige ist der detaillierte Inhalt vonWas sind die Unterschiede zwischen ArrayList, LinkedList und Vector?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

1. Der Unterschied zwischen Iterator und foreach ist der polymorphe Unterschied (die unterste Ebene von foreach ist Iterator ein Schnittstellentyp, und es ist egal, ob for und foreach der Typ bekannt ist). 1. Warum hei?t es, dass die unterste Ebene von foreach der von Iterator geschriebene Code ist: 2. Der Unterschied zwischen ?remove in foreach“ und ?iterator“. im Alibaba Java Development Manual, aber in Fall 1 wird kein Fehler gemeldet, und in Fall 2 wird zuerst ein Fehler gemeldet (java. util.ConcurrentModificationException).

Mit der Methode ?contains()“ der Schnittstelle ?List“ k?nnen Sie prüfen, ob ein Objekt in der Liste vorhanden ist. enth?lt()-Methode booleancontains(Objecto) Gibt ?true“ zurück, wenn diese Liste das angegebene Element enth?lt. Formeller ausgedrückt: Gibt genau dann ?true“ zurück, wenn diese Liste mindestens ein Element e enth?lt, sodass (o==null?e==null:o.equals(e)). Parameter c – das Element, dessen Anwesenheit in dieser Liste getestet werden soll. Rückgabewert Gibt ?true“ zurück, wenn diese Liste das angegebene Element enth?lt. L?st eine ClassCastException aus – wenn der Typ des angegebenen Elements mit dieser Liste nicht kompatibel ist (optional). NullP

Verwenden Sie die ArrayList.remove()-Funktion von Java, um Elemente aus einer ArrayList zu entfernen. In Java ist ArrayList eine h?ufig verwendete Sammlungsklasse, die zum Speichern und Betreiben einer Reihe von Elementen verwendet wird. Die ArrayList-Klasse bietet viele Methoden zum Hinzufügen, L?schen, ?ndern und Abfragen von Elementen in der Sammlung. Eine der am h?ufigsten verwendeten Methoden ist ?remove()“, mit der Elemente aus einer ArrayList entfernt werden k?nnen. Die Methode ?remove()“ von ArrayList hat zwei überladene Formen: eine

Verwenden Sie die Methode ?removeLast()“ der Klasse ?LinkedList“, um das letzte Element in der verknüpften Liste zu l?schen. LinkedList ist eine allgemeine Datenstruktur im Java-Sammlungsframework. Sie speichert Elemente in Form einer doppelt verknüpften Liste. Mithilfe der von der LinkedList-Klasse bereitgestellten Methoden k?nnen wir die verknüpfte Liste problemlos bearbeiten, z. B. Elemente hinzufügen, l?schen und ?ndern. In einigen Szenarien müssen wir m?glicherweise das letzte Element in der verknüpften Liste l?schen. Die LinkedList-Klasse stellt ?removeLas“ bereit

Warum ist die anf?ngliche Kapazit?t von HashMap 16? Wenn wir über die Initialisierungskapazit?t von ArrayList sprechen, müssen wir zun?chst die Initialisierungskapazit?t von HashMap überprüfen. Am Beispiel des Java8-Quellcodes gibt es in HashMap zwei relevante Faktoren: Initialisierungskapazit?t und Ladefaktor: /***Thedefaultinitialcapacity-MUSTbeapoweroftwo.*/staticfinalintDEFAULT_INITIAL_CAPACITY=1>1);if(newCapacity-minCapacity0)newCapacity=hugeCapacity

LinkedList ist eine allgemeine Klasse von JavaCollectionFramework, die drei Schnittstellen implementiert: List, Deque und Queue. Es bietet die Funktionalit?t der LinkedList-Datenstruktur, einer linearen Datenstruktur, in der jedes Element miteinander verknüpft ist. Wir k?nnen eine Vielzahl von Vorg?ngen für eine LinkedList ausführen, einschlie?lich des Hinzufügens, Entfernens und Durchlaufens von Elementen. Um Elemente zur LinkedList-Sammlung hinzuzufügen, k?nnen wir verschiedene integrierte Methoden wie add(), addFirst() und addLast() verwenden. Wir werden untersuchen, wie Sie diese Methoden verwenden, um Elemente zu einer LinkedList hinzuzufügen. in Java

Verwenden Sie die ArrayList.clear()-Funktion von Java, um die Elemente in der ArrayList zu l?schen. In der Java-Programmierung ist ArrayList eine sehr h?ufig verwendete Datenstruktur, die Elemente dynamisch speichern und darauf zugreifen kann. In einigen F?llen müssen wir jedoch m?glicherweise alle Elemente in der ArrayList l?schen, um den Speicher wiederzuverwenden oder freizugeben. Zu diesem Zeitpunkt k?nnen Sie die Funktion clear () von ArrayList verwenden, um dies zu erreichen. ArrayList.clear()

Java verwendet die Funktion contains() der Klasse ArrayList, um zu bestimmen, ob ein Element vorhanden ist. ArrayList ist eine sehr h?ufig verwendete Datenstruktur in der Java-Programmierung. Es bietet eine flexible M?glichkeit, einen Datensatz zu speichern und zu bearbeiten. Zus?tzlich zum einfachen Hinzufügen, L?schen und Zugreifen auf Elemente bietet ArrayList auch einige nützliche Methoden, wie beispielsweise die Funktion enth?lt(), mit der ermittelt wird, ob ein Element in der ArrayList vorhanden ist. Die Funktion enth?lt () ist A
