Direkt zum Inhalt
Urkunden
Java SchlüsselwörterJava-ArraysJava Objektorientierte ProgrammierungJava File HandlingEinführung in JavaGrundlagen der Java-Sprache

Java ArrayList

Das ArrayList in Java ist ein Teil des Java Collections Framework und befindet sich im Paket java.util. Es ist eine größenveränderbare Array-Implementierung der Schnittstelle List, die eine bequeme Möglichkeit bietet, Sammlungen von Elementen mit dynamischer Größe zu speichern.

Verwendung

ArrayList wird verwendet, wenn du ein flexibles Feld brauchst, das wachsen und schrumpfen kann. Sie ermöglicht einen schnellen Zufallszugriff und ist für Szenarien geeignet, in denen häufige Lesevorgänge erforderlich sind.

Syntax

ArrayList<Type> arrayListName = new ArrayList<Type>();
  • Type: Der Typ der Elemente in der Liste.
  • arrayListName: Der Name der ArrayList Instanz.

Beispiele

Beispiel 1: Grundlegende Operationen

import java.util.ArrayList;

public class BasicArrayListExample {
    public static void main(String[] args) {
        ArrayList<String> fruits = new ArrayList<>();
        fruits.add("Apple");
        fruits.add("Banana");
        fruits.add("Orange");

        System.out.println("Fruits: " + fruits);

        fruits.remove("Banana");
        System.out.println("After removal: " + fruits);

        System.out.println("First fruit: " + fruits.get(0));
    }
}

In diesem Beispiel wird ein ArrayList vom Typ String erstellt, um Obstnamen zu speichern. Die Methode add() wird verwendet, um Elemente einzufügen, remove() löscht ein Element und get() ruft ein Element über seinen Index ab.

Beispiel 2: Iterieren über eine ArrayListe

import java.util.ArrayList;

public class IterateArrayListExample {
    public static void main(String[] args) {
        ArrayList<Integer> numbers = new ArrayList<>();
        numbers.add(10);
        numbers.add(20);
        numbers.add(30);

        for (int number : numbers) {
            System.out.println(number);
        }
    }
}

Dieses Beispiel zeigt, wie du mit einer for-each Schleife über eine ArrayList iterieren kannst. Ein ArrayList vom Typ Integer wird erstellt und jedes Element wird auf der Konsole ausgegeben.

Beispiel 3: Sortieren einer ArrayListe

import java.util.ArrayList;
import java.util.Collections;

public class SortArrayListExample {
    public static void main(String[] args) {
        ArrayList<String> names = new ArrayList<>();
        names.add("John");
        names.add("Alice");
        names.add("Bob");

        Collections.sort(names);

        System.out.println("Sorted names: " + names);
    }
}

In diesem Beispiel wird ein ArrayList vom Typ String mit der Methode Collections.sort() sortiert, die die Elemente in natürlicher Reihenfolge anordnet.

Zusätzliche Operationen

Die Klasse ArrayList bietet mehrere Methoden, um Operationen mit den Elementen durchzuführen:

  • Auf Gegenstände zugreifen: Verwende die Methode get(), um Elemente nach Index abzurufen.
  • Ändern von Gegenständen: Verwende die Methode set(), um ein Element an einem bestimmten Index zu ändern.
  • Entfernen von Gegenständen: Verwende die Methode remove(), um ein Element nach Index zu löschen, und die Methode clear(), um alle Elemente zu entfernen.
  • Größe der ArrayListe ermitteln: Verwende die Methode size(), um die Anzahl der Elemente in ArrayList zu ermitteln.
  • Andere Typen verwenden: Speichere verschiedene Datentypen in ArrayList mit Hilfe von Wrapper-Klassen für primitive Typen (z.B. Integer, Boolean).

Tipps und bewährte Praktiken

  • Anfangskapazität: Wenn die Größe von ArrayList im Voraus bekannt ist, kannst du eine Anfangskapazität angeben, um die Leistung zu verbessern und die Notwendigkeit einer Größenänderung zu verringern.
    ArrayList list = new ArrayList<>(50); // Initial capacity of 50
  • Typ Sicherheit: Verwende Generika, um Typsicherheit zu gewährleisten und Laufzeitfehler zu vermeiden.
    ArrayList numbers = new ArrayList<>(); // Type-safe declaration
  • Vermeide häufige Größenänderungen: Minimiere häufige Hinzufügungen und Entfernungen von Elementen, um den Overhead bei Größenänderungen zu reduzieren.
  • Verwende Iterator für sicheres Entfernen: Wenn du während der Iteration Elemente entfernst, verwende eine Iterator, um ConcurrentModificationException zu vermeiden.
    Iterator iterator = list.iterator();
    while (iterator.hasNext()) {
        if (condition) {
            iterator.remove();
        }
    }
  • Erwäge LinkedList für häufige Einfügungen/Löschungen: Wenn häufige Einfügungen und Löschungen erforderlich sind, solltest du LinkedList verwenden, das für solche Vorgänge eine bessere Leistung bietet.

Java Grundlagen lernen

Baue deine Java-Kenntnisse von Grund auf auf und beherrsche Programmierkonzepte.
Kostenloses Lernen beginnen