Allgemeines
Objekte...
Konstruktoren
Wichtige Methoden
Weitere Methoden
Weitere Methoden finden Sie in der Original-Dokumentation der Klasse ArrayList auf der Webseite von Oracle.
Konstruktoren im Detail
ArrayList()↑
Das ist der einfachste Konstruktor der Klasse ArrayList, mit dem man auf einfache Weise eine leere Liste mit einer Kapazität von 10 erzeugen kann.
ArrayList(Collection C)↑
Erzeugt eine ArrayList, die alle Element der übergebenen Collection C übernimmt, und zwar in der gleichen Reihenfolge wie in der Collection.
Methoden im Detail
add(Datentyp d)↑
Syntax:
- public void add(Datentyp objekt)
- public void add(int index, Datentyp objekt)
Rückgabewert:
---
Funktion:
Diese Methode fügt ein Objekt objekt in die ArrayList ein.
- Der erste Konstruktor hängt das neue Element an das Ende der List an.
- Bei dem zweiten Konstruktor kann man auch die Position angeben, an der das Element eingefügt werden soll. Die anderen Elemente rücken dann je eine Position nach rechts.
Bemkerung:
Bei dem einzufügenden Element muss es sich um ein Objekt einer Klasse handeln. Primitive Datentypen können nicht auf diese Weise in eine ArrayList eingefügt werden - sie müssen zuvor in ein Objekt umgewandelt werden, beispielsweise mit einer der Wrapper-Methoden.
Codebeispiel 1:
import java.util.ArrayList; public class ArrayListTest { ArrayListnamen; public ArrayListTest() { namen = new ArrayList<>(); namen.add("Hans"); namen.add("Lotte"); namen.add(1,"Karl"); if (namen.add("Franz")) System.out.println("Franz wurde hinzugefügt"); else System.out.println("Franz konnte nicht hinzugefügt werden"); } }
Hier sehen wir vier Beispiele für die enorme Vielfalt der append()-Methode. Wenn Sie noch mehr Möglichkeiten sehen wollen, gehen Sie einfach auf die Oracle-Dokumentation der Klasse StringBuilder.
Wenn dieser Code ausgeführt wurde, besteht die ArrayList aus den Objekten "Hans", "Karl", "Lotte" und "Franz". Die anderen sechs Element der insgesamt aus 10 Elementen bestehenden Liste haben den Wert null.
clear()↑
Syntax:
public void clear()
Rückgabewert:
---
Funktion:
Löscht die gesamte ArrayList.
Anmerkungen:
Man könnte nun denken, nach dem Löschen besteht die ArrayList wieder aus 10 Elementen mit dem Wert null. Das ist aber nicht der Fall. Die Größe (size) der ArrayList ist tatsächlich 0, es sind keine Elemente mehr vorhanden, auch keine null-Elemente. Ein Aufruf wie get(0) würde dann zu einer Fehlermeldung führen, weil es ja kein Element mit dem Index 0 gibt.
Siehe dazu auch die Anmerkungen für die Methode isEmpty().
contains()↑
Syntax:
public boolean contains(Datentyp objekt)
Rückgabewert:
true oder false
Funktion:
Überprüft, ob das übergebene Objekt in der Liste enthalten ist.
get()↑
Syntax:
public Datentyp get(int index)
Rückgabewert:
Ein Objekt des in der ArrayList gespeicherten Datentyps
Funktion:
Liest das Element aus, das sich an der angegebenen Position index befindet.
isEmpty()↑
Syntax:
public boolean isEmpty()
Rückgabewert:
true oder false
Funktion:
Überprüft, ob die Liste leer ist und die Länge 0 hat.
Codebeispiel:
ArrayListnamen = new ArrayList<>(); boolean b = namen.isEmpty(); // ⟹ true int s = namen.size(); // ⟹ 0
Dieses Beispiel zeigt, dass eine neu angelegte ArrayList die Länge 0 hat und leer ist. Die Kapazität der neuen Liste hat zwar den Wert 10, aber die Länge (size()) der ArrayList hat den Wert 0. Formal gesehen besitzt die neue ArrayList also keine Elemente, also auch keine null-Elemente.
Intern sieht die Sache etwas anders aus. Eine ArrayList basiert technisch auf einem gewöhnlichen Array. Wenn eine neue ArrayList erzeugt wird, legt der Konstruktor intern sofort ein Array der Größe 10 an, dieser Array existiert dann konkret im Speicher. Der Objektinspektor von BlueJ zeigt dann auch tatsächlich 10 Elemente mit dem Wert null an.
Formal - und für die Entwickler wichtig - die ArrayList ist leer und besteht aus 0 Elementen! Darauf kann man sich verlassen. Wie es intern aussieht, ist völlig egal (Information hiding, Datenkapselung).
remove()↑
Syntax:
- public boolean remove(Object o)
- public void remove(int index)
Rückgabewert:
- true, falls das Objekt o gefunden und entfernt wurde, sonst false
- ---
Funktion:
- Entfernt das erste Vorkommen des Objektes o, falls vorhanden
- Entfernt das Objekt an der Position index
Codebeispiel:
ArrayListnamen = new ArrayList<>(); namen.add("Anna"); namen.add("Bernd"); namen.add("Clara"); boolean ok = namen.remove("Clara"); System.out.println(ok); // true System.out.println(namen); // [Anna, Bernd]
set()↑
Syntax:
public void set(int index, Datentyp Element)
Rückgabewert:
---
Funktion:
Ersetzt das Element an der Position index durch das neue Element.
Codebeispiel:
namen = new ArrayList<>(); namen.add("Hans"); namen.add("Lotte"); namen.set(1, "Karl");
Die ArrayList hat nach Ausführung dieser Zeilen folgende Elemente: "Hans", "Karl". Das Element "Lotte" an Index 1 wurde durch "Karl" ersetzt.
size()↑
Syntax:
public int size()
Rückgabewert:
int
Funktion:
Gibt die Anzahl der tatsächlich in der Liste enthaltenen Elemente zurück, nicht aber die Kapazität der Liste, die in der Regel höher ist.
Quellen:
- Habelitz: Programmieren lernen mit Java, 8. Auflage, Rheinwerk-Verlag Bonn 2025.