Unterschiede zwischen List und Arraylist in Java
ArrayList
und List
sind Mitglieder des Collection-Frameworks in Java, wobei ArrayList
eine Klasse und List
eine Schnittstelle ist. Mit Hilfe des Collection-Frameworks können wir verschiedene Operationen wie Löschen, Einfügen, Sortieren, Manipulieren und Suchen in einer Gruppe von Objekten durchführen.
Sammlungsrahmen
Das Collection-Framework in Java verfügt über die folgenden Schnittstellen und Klassen:
Schnittstelle:
- Einstellen
- Warteschlange
- Liste
- Deque
Klassen:
- ArrayListe
- Vektor
- Verknüpfte Liste
- HashSet
- BaumSet
- LinkedHashSet
- Prioritätswarteschlange
Das Collection-Framework hat verschiedene Klassen und Schnittstellen, aber dieser Artikel konzentriert sich nur auf List
und ArrayList
, also lassen Sie uns beide anhand eines Beispiels besprechen.
Liste in Java
In Java gehört List
zum Collection-Framework. Es ist eine geordnete Gruppe von Objekten, die als eine Einheit dargestellt werden.
Wir können heterogene Datentypen in einer Liste speichern und auf die Daten basierend auf den Indizes der Elemente der Liste zugreifen. Sie können verschiedene Operationen wie Löschen, Einfügen, Aktualisieren und Suchen in einer Liste in Java ausführen.
Die Schnittstelle List
befindet sich im Paket java.util
. Es erbt die Collection-Schnittstelle.
Es implementiert die Klassen LinkedList
, Stack
, ArrayList
und Vector
. Wir können eine Liste sowohl rückwärts als auch vorwärts durchlaufen.
package articlecodesinjava;
import java.util.ArrayList;
import java.util.List;
class TestingList {
public static void main(String[] args) {
List<String> list = new ArrayList<>(); // List object
list.add("Successfully created a list in Java"); // adding a string to the List
System.out.println(list);
}
}
Ausgang:
[Successfully created a list in Java] //The output is in List form
Eingebaute Listenmethoden in Java
In Java hat eine Liste mehrere spezifische Methoden. Diese werden für verschiedene Zwecke verwendet; Einige der beliebtesten und häufigsten sind die folgenden:
package articlecodesinjava;
import java.util.*;
class TestingList {
public static void main(String[] args) {
List<Object> list = new ArrayList<>();
list.add(1); // Adding values in list
list.add(2);
System.out.println("List after adding values " + list);
list.removeAll(list); // return and empty list, all values are erased
System.out.println("List after the removeAll method " + list);
list.add("3"); // Adding values in list
list.add("4");
System.out.println("New list " + list);
System.out.println("The size of the List " + list.size());
System.out.println("Return a value from the list a 1 position " + list.get(1));
System.out.println("Removing value at position 1 = " + list.remove(1));
System.out.println("Final list" + list);
}
}
Ausgang:
List after adding values [1, 2]
List after the removeAll method []
New list [3, 4]
The size of the List 2
Return a value from the list a 1 position 4
Removing value at position 1 = 4
Final list[3]
Zunächst haben wir das Paket java.util.*
importiert, um im obigen Programm auf List
und ArrayList
zugreifen zu können. Dann haben wir eine Liste erstellt und mit dem Objekt der Liste zuerst einige Werte mit add()
gefüllt, als nächstes haben wir alle Daten aus der Liste mit removeAll()
entfernt, es wurde eine leere Liste zurückgegeben.
Außerdem haben wir der Liste wieder einige Werte hinzugefügt, um einige andere Operationen auf der Liste auszuführen. Wir haben die Größe der Liste mit size()
ermittelt und mit get(1)
einen Wert an Position/Indexnummer 1 angezeigt, und am Ende haben wir mit remove() einen Wert an Indexnummer 1 entfernt. 1)
.
Die Liste enthält tonnenweise eingebaute Methoden. Sie können mehr auf der offiziellen Seite von Java lesen.
ArrayList in Java
In Java ist ArrayList
eine erweiterte Version des traditionellen Arrays. Das herkömmliche Array hat eine feste Größe, sodass es nicht möglich war, die Größe des Arrays zu vergrößern oder zu verkleinern.
Daher bietet das Collection-Framework ein dynamisches Array namens ArrayList
. Die Klasse ArrayList
ist ein dynamisches Array, das seine Größe beim Hinzufügen und Entfernen von Elementen aus der Liste erweitern und verkleinern kann.
Es erbt die Klasse AbstractList
und implementiert die Schnittstelle List
, um alle Methoden der List
-Schnittstelle zu verwenden. Auf die Elemente kann über die Indizes der Elemente der Liste zugegriffen werden.
ArrayList
unterstützt keine primitiven Datentypen wie char, int, float, etc. Aber wir verwenden die Wrapper-Klasse für solche Fälle.
package articlecodesinjava;
import java.util.ArrayList;
class TestingArrayList {
public static void main(String[] args) {
ArrayList<String> arrayList = new ArrayList<>(); // ArrayList object
arrayList.add("Successfully created an arrayList in Java"); // adding a string to the ArrayList
System.out.println(arrayList);
}
}
Ausgang:
[Successfully created an arrayList in Java]
Eingebaute ArrayList-Methoden in Java
ArrayList
erweitert AbstractList
, das List
implementiert, sodass wir alle Methoden von List
in ArrayList
verwenden können.
Siehe das Beispiel unten. Wir werden alle oben genannten Programme mit denselben Methoden in ArrayList
verwenden.
Codebeispiel:
package articlecodesinjava;
import java.util.*;
class TestingArrayList {
public static void main(String[] args) {
ArrayList arrayList = new ArrayList<>();
arrayList.add(1); // Adding values in ArrayList
arrayList.add(2);
System.out.println("ArrayList after adding values " + arrayList);
arrayList.removeAll(arrayList); // return and empty ArrayList, all values are erased
System.out.println("ArrayList after the removeAll method " + arrayList);
arrayList.add("3"); // Adding values in ArrayList
arrayList.add("4");
arrayList.add(0, 5);
System.out.println("New ArrayList " + arrayList);
System.out.println("The size of the ArrayList " + arrayList.size());
System.out.println("Return a value from the ArrayList at 1 position " + arrayList.get(1));
System.out.println("Removing value at position 1 = " + arrayList.remove(1));
System.out.println("Final ArrayList" + arrayList);
}
}
Ausgang:
ArrayList after adding values [1, 2]
ArrayList after the removeAll method []
New ArrayList [5, 3, 4]
The size of the ArrayList 3
Return a value from the ArrayList at 1 position 3
Removing value at position 1 = 3
Final ArrayList[5, 4]
Unterschiede zwischen List und ArrayList in Java
Im Folgenden sind einige der wichtigsten Unterschiede zwischen der List
und der ArrayList
in Java aufgeführt:
Aufführen
Liste
ist eine Schnittstelle.- Die
List
-Schnittstelle erweitert das Collection-Framework. - Es kann nicht instanziiert werden.
- Es erstellt eine Liste von Objekten.
Listen
sind schneller bei der Manipulation von Objekten.
Anordnungsliste
ArrayList
ist eine Standard-Collection-Klasse.ArrayList
erweitertAbstractList
, dasList
-Schnittstellen implementiert.- Es kann instanziiert werden.
- Es erstellt ein Array von Objekten.
ArrayLists
bearbeiten Objekte nicht so schnell wie List.
Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.
LinkedInVerwandter Artikel - Java List
- Aufteilen einer Liste in Chunks in Java
- Filterliste in Java
- Finden Sie den Index eines Elements in einer Liste mit Java
- Holen Sie sich das erste Element aus der Liste in Java
- Konvertieren einer Sammlung in eine Liste in Java