Java-ArrayList-Klasse
Java-ArrayList-Klasse
In diesem Tutorial lernen wir die Klasse ArrayList in Java kennen. Anhand von Beispielen lernen wir verschiedene Operationen und Methoden der Arraylist kennen.
Der ArrayList
-Klasse des Java Collections Framework stellt die Funktionalität von resizable-arrays bereit .
Es implementiert den List
Schnittstelle.

Java-ArrayList vs. Array
In Java müssen wir die Größe eines Arrays deklarieren, bevor wir es verwenden können. Sobald die Größe eines Arrays deklariert ist, ist es schwierig, sie zu ändern.
Um dieses Problem zu lösen, können wir den ArrayList
verwenden Klasse. Es ermöglicht uns, in der Größe veränderbare Arrays zu erstellen.
Im Gegensatz zu Arrays können Arraylisten ihre Kapazität automatisch anpassen, wenn wir Elemente hinzufügen oder daraus entfernen. Daher werden Arraylisten auch als dynamische Arrays bezeichnet .
Erstellen einer ArrayList
Vor der Verwendung von ArrayList
, müssen wir den java.util.ArrayList
importieren Paket zuerst. So können wir Arraylisten in Java erstellen:
ArrayList<Type> arrayList= new ArrayList<>();
Hier Typ gibt den Typ einer Arrayliste an. Zum Beispiel
// create Integer type arraylist
ArrayList<Integer> arrayList = new ArrayList<>();
// create String type arraylist
ArrayList<String> arrayList = new ArrayList<>();
Im obigen Programm haben wir Integer
verwendet nicht int. Dies liegt daran, dass wir beim Erstellen einer Arrayliste keine primitiven Typen verwenden können. Stattdessen müssen wir die entsprechenden Wrapper-Klassen verwenden.
Hier, Integer
ist die entsprechende Wrapper-Klasse von int
. Um mehr zu erfahren, besuchen Sie die Java-Wrapper-Klasse.
Beispiel:ArrayList in Java erstellen
import java.util.ArrayList;
class Main {
public static void main(String[] args){
// create ArrayList
ArrayList<String> languages = new ArrayList<>();
// Add elements to ArrayList
languages.add("Java");
languages.add("Python");
languages.add("Swift");
System.out.println("ArrayList: " + languages);
}
}
Ausgabe
ArrayList: [Java, Python, Swift]
Im obigen Beispiel haben wir einen ArrayList
erstellt benannte Sprachen .
Hier haben wir den add()
verwendet Methode zum Hinzufügen von Elementen zur Arrayliste. Wir werden mehr über den add()
erfahren -Methode später in diesem Tutorial.
Grundlegende Operationen auf ArrayList
Die ArrayList
-Klasse stellt verschiedene Methoden bereit, um verschiedene Operationen auf Arraylisten auszuführen. Wir werden uns in diesem Tutorial einige häufig verwendete Arraylist-Operationen ansehen:
- Elemente hinzufügen
- Access-Elemente
- Elemente ändern
- Elemente entfernen
1. Elemente zu einer ArrayList hinzufügen
Um der Arrayliste ein einzelnes Element hinzuzufügen, verwenden wir den add()
Methode des ArrayList
Klasse. Zum Beispiel
import java.util.ArrayList;
class Main {
public static void main(String[] args){
// create ArrayList
ArrayList<String> languages = new ArrayList<>();
// add() method without the index parameter
languages.add("Java");
languages.add("C");
languages.add("Python");
System.out.println("ArrayList: " + languages);
}
}
Ausgabe
ArrayList: [Java, C, Python]
Im obigen Beispiel haben wir einen ArrayList
erstellt benannte Sprachen . Hier haben wir den add()
verwendet Methode zum Hinzufügen von Elementen zu Sprachen .
Um mehr zu erfahren, besuchen Sie die Java ArrayList add().
Andere Möglichkeit, Elemente zur Arrayliste hinzuzufügen
Wie füge ich ein Element an einer bestimmten Position in einer ArrayList hinzu?
Wir können auch eine Indexnummer übergeben als zusätzlicher Parameter zum add()
Methode, um ein Element an der angegebenen Position hinzuzufügen. Zum Beispiel
// add JavaScript at index 1
languages.add(1, "JavaScript");
// add C++ at index 3
languages.add(3, "C++");
Wie füge ich alle Elemente eines Sets zu einer Arrayliste hinzu?
Wir können auch alle Elemente einer Sammlung (Set, Map) mit dem addAll()
zu einer Arrayliste hinzufügen Methode. Zum Beispiel
import java.util.ArrayList;
import java.util.HashSet;
class Main {
public static void main(String[] args) {
// create a set
HashSet<String> vowels = new HashSet<>();
vowels.add("a");
vowels.add("e");
vowels.add("i");
// create an arraylist
ArrayList<String> alphabets = new ArrayList<>();
// add all elements of set to arraylist
alphabets.addAll(vowels);
System.out.println("ArrayList: " + alphabets);
}
}
// Output: ArrayList: [a, e, i]
Um mehr zu erfahren, besuchen Sie Java ArrayList addAll().
2. Greifen Sie auf ArrayList-Elemente zu
Um auf ein Element aus der Arrayliste zuzugreifen, verwenden wir den get()
Methode des ArrayList
Klasse. Zum Beispiel
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<String> animals = new ArrayList<>();
// add elements in the arraylist
animals.add("Cat");
animals.add("Dog");
animals.add("Cow");
System.out.println("ArrayList: " + animals);
// get the element from the arraylist
String str = animals.get(1);
System.out.print("Element at index 1: " + str);
}
}
Ausgabe
ArrayList: [Cat, Dog, Cow] Element at index 1: Dog
Im obigen Beispiel haben wir den get()
verwendet Methode mit dem Parameter 1 . Hier gibt die Methode das Element an Index 1 zurück .
Um mehr zu erfahren, besuchen Sie Java ArrayList get().
Wir können auch auf Elemente des ArrayList
zugreifen mit dem iterator()
Methode. Um mehr zu erfahren, besuchen Sie Java ArrayList iterator().
3. ArrayList-Elemente ändern
Um Elemente der Arrayliste zu ändern, verwenden wir den set()
Methode des ArrayList
Klasse. Zum Beispiel
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<String> languages = new ArrayList<>();
// add elements in the array list
languages.add("Java");
languages.add("Kotlin");
languages.add("C++");
System.out.println("ArrayList: " + languages);
// change the element of the array list
languages.set(2, "JavaScript");
System.out.println("Modified ArrayList: " + languages);
}
}
Ausgabe
ArrayList: [Java, Kotlin, C++] Modified ArrayList: [Java, Kotlin, JavaScript]
Im obigen Beispiel haben wir einen ArrayList
erstellt benannte Sprachen . Beachten Sie die Zeile,
language.set(2, "JavaScript");
Hier der set()
-Methode ändert das Element bei Index 2 zu JavaScript .
Um mehr zu erfahren, besuchen Sie Java ArrayList set().
4. ArrayList-Elemente entfernen
Um ein Element aus der Arrayliste zu entfernen, können wir den remove()
verwenden Methode des ArrayList
Klasse. Zum Beispiel
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<String> animals = new ArrayList<>();
// add elements in the array list
animals.add("Dog");
animals.add("Cat");
animals.add("Horse");
System.out.println("ArrayList: " + animals);
// remove element from index 2
String str = animals.remove(2);
System.out.println("Updated ArrayList: " + animals);
System.out.println("Removed Element: " + str);
}
}
Ausgabe
ArrayList: [Dog, Cat, Horse] Updated ArrayList: [Dog, Cat] Removed Element: Horse
Hier der remove()
Methode nimmt die Indexnummer als Parameter. Und entfernt das durch die Indexnummer angegebene Element .
Um mehr zu erfahren, besuchen Sie Java ArrayList remove().
Wir können auch alle Elemente auf einmal aus der Arrayliste entfernen. Um mehr zu erfahren, besuchen Sie
- Java ArrayList removeAll()
- Java ArrayList löschen()
Methoden der ArrayList-Klasse
Im vorherigen Abschnitt haben wir etwas über add()
gelernt , get()
, set()
, und remove()
Methode des ArrayList
Klasse.
Neben diesen grundlegenden Methoden sind hier einige weitere ArrayList
Methoden, die allgemein verwendet werden.
Methoden | Beschreibungen |
---|---|
Größe() | Gibt die Länge der Arrayliste zurück. |
sortieren() | Sortieren Sie die Arraylist-Elemente. |
klonen() | Erzeugt eine neue Arrayliste mit demselben Element, derselben Größe und derselben Kapazität. |
enthält() | Durchsucht die Arrayliste nach dem angegebenen Element und gibt ein boolesches Ergebnis zurück. |
ensureCapacity() | Gibt das Gesamtelement an, das die Arrayliste enthalten kann. |
isEmpty() | Überprüft, ob die Arrayliste leer ist. |
indexOf() | Sucht ein bestimmtes Element in einer Arrayliste und gibt den Index des Elements zurück. |
Wenn Sie mehr über die verschiedenen Methoden von Arraylist erfahren möchten, besuchen Sie Java ArrayList-Methoden.
Eine ArrayList durchlaufen
Wir können die Java for-each-Schleife verwenden, um jedes Element der Arrayliste zu durchlaufen. Zum Beispiel
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
// creating an array list
ArrayList<String> animals = new ArrayList<>();
animals.add("Cow");
animals.add("Cat");
animals.add("Dog");
System.out.println("ArrayList: " + animals);
// iterate using for-each loop
System.out.println("Accessing individual elements: ");
for (String language : animals) {
System.out.print(language);
System.out.print(", ");
}
}
}
Ausgabe
ArrayList: [Cow, Cat, Dog] Accessing individual elements: Cow, Cat, Dog,
Häufig gestellte Fragen
Was ist der Unterschied zwischen Java ArrayList und LinkedList?
Einige der Hauptunterschiede zwischen ArrayList
und LinkedList
in Java sind:
ArrayList | VerknüpfteListe |
Implementiert List Schnittstelle | Implementiert List , Queue und Deque Schnittstellen. |
Speichert einen einzelnen Wert. | Speichert 3 Werte:Daten, vorherige und nächste Adresse |
Bietet die Funktionalität eines in der Größe veränderbaren Arrays. | Bietet die Funktionalität einer doppelt verknüpften Liste |
Wir können den ArrayList
konvertieren in ein Array mit dem toArray()
Methode. Zum Beispiel
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<String> languages = new ArrayList<>();
// add elements in the array list
languages.add("Java");
languages.add("Python");
languages.add("C++");
System.out.println("ArrayList: " + languages);
// create a new array of String type
String[] arr = new String[languages.size()];
// convert ArrayList into an array
languages.toArray(arr);
System.out.print("Array: ");
// access elements of the array
for (String item : arr) {
System.out.print(item + ", ");
}
}
}
Ausgabe
ArrayList: [Java, Python, C++] Array: Java, Python, C++,
Im obigen Beispiel der toArray()
-Methode konvertiert die Sprachen arraylist in ein Array und speichert es in arr . Um mehr zu erfahren, besuchen Sie Java ArrayList toArray().
Wir verwenden den asList()
Methode des Arrays
Klasse. Um asList()
zu verwenden , müssen wir den java.util.Arrays
importieren Paket zuerst. Zum Beispiel
import java.util.ArrayList;
import java.util.Arrays;
class Main {
public static void main(String[] args) {
// create an array of String type
String[] arr = { "Java", "Python", "C++" };
System.out.print("Array: ");
// print array
for (String str : arr) {
System.out.print(str);
System.out.print(" ");
}
// create an ArrayList from an array
ArrayList<String> languages = new ArrayList<>(Arrays.asList(arr));
System.out.println("\nArrayList: " + languages);
}
}
Ausgabe
Array: Java Python C++ ArrayList: [Java, Python, C++]
Im obigen Programm haben wir zuerst ein Array arr
erstellt des String
Typ. Beachten Sie den Ausdruck,
Arrays.asList(arr)
Hier der asList()
-Methode konvertiert das Array in eine Arrayliste.
Wir verwenden den Arrays.asList()
Methode zum Erstellen und Initialisieren einer Arrayliste in einer einzelnen Zeile. Zum Beispiel
import java.util.ArrayList;
import java.util.Arrays;
class Main {
public static void main(String[] args) {
// create and initialize ArrayList
ArrayList<String> languages = new ArrayList<>(Arrays.asList("Java", "Python", "C"));
System.out.println("ArrayList: " + languages);
}
}
// Output: ArrayList: [Java, Python, C]
Wie konvertiere ich eine ArrayList in einen String?
Wir verwenden den toString()
Methode des ArrayList
Klasse, um eine Arrayliste in einen String umzuwandeln. Zum Beispiel
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<String> languages = new ArrayList<>();
// add elements in the ArrayList
languages.add("Java");
languages.add("Python");
languages.add("Kotlin");
System.out.println("ArrayList: " + languages);
// convert ArrayList into a String
String str = languages.toString();
System.out.println("String: " + str);
}
}
Ausgabe
ArrayList: [Java, Python, Kotlin] String: [Java, Python, Kotlin]
Hier der toString()
-Methode konvertiert die gesamte Arrayliste in eine einzelne Zeichenfolge. Um mehr zu erfahren, besuchen Sie Java ArrayList toString().
Wir können auch eine Arrayliste mit der List-Schnittstelle erstellen. Das liegt daran, dass die ArrayList-Klasse die List-Schnittstelle implementiert. Sehen wir uns ein Beispiel an,
import java.util.ArrayList;
import java.util.List;
class Main {
public static void main(String[] args) {
// create arraylist using List
List<String> languages = new ArrayList<>();
languages.add("Java");
languages.add("Python");
languages.add("C");
System.out.println("ArrayList: " + languages);
}
}
// Output: ArrayList: [Java, Python, C]
Java