Hinzufügen mehrerer Elemente zu einer Java ArrayList

1. Übersicht über ArrayList

In diesem kurzen Tutorial zeigen wir Ihnen, wie Sie einer bereits initialisierten ArrayList mehrere Elemente hinzufügen .

Eine Einführung in die Verwendung der ArrayList finden Sie in diesem Artikel hier.

2. AddAll

Zunächst werden wir eine einfache Möglichkeit vorstellen, mehrere Elemente zu einer ArrayList hinzuzufügen .

Zuerst verwenden wir addAll () , dessen Argument eine Sammlung ist:

List anotherList = Arrays.asList(5, 12, 9, 3, 15, 88); list.addAll(anotherList);

Es ist wichtig zu beachten, dass die in der ersten Liste hinzugefügten Elemente auf dieselben Objekte verweisen wie die Elemente in einer anderen Liste .

Aus diesem Grund wirken sich alle in einem dieser Elemente vorgenommenen Änderungen auf beide Listen aus.

3. Collections.addAll

Die Collections- Klasse besteht ausschließlich aus statischen Methoden, die Sammlungen bearbeiten oder zurückgeben.

Eines davon ist addAll , das eine Zielliste benötigt, und die hinzuzufügenden Elemente können einzeln oder als Array angegeben werden.

Hier ist ein Beispiel für die Verwendung mit einzelnen Elementen:

List list = new ArrayList(); Collections.addAll(list, 1, 2, 3, 4, 5);

Und noch eine, um die Operation mit zwei Arrays zu veranschaulichen:

List list = new ArrayList(); Integer[] otherList = new Integer[] {1, 2, 3, 4, 5}; Collections.addAll(list, otherList);

Ähnlich wie im obigen Abschnitt erläutert, bezieht sich der Inhalt beider Listen hier auf dieselben Objekte.

4. Verwenden von Java 8

Diese Version von Java eröffnet unsere Möglichkeiten durch Hinzufügen neuer Tools. Das, was wir in den nächsten Beispielen untersuchen werden, ist Stream :

List source = ...; List target = ...; source.stream() .forEachOrdered(target::add);

Die Hauptvorteile dieser Art sind die Möglichkeit, Überspringen und Filter zu verwenden. Im nächsten Beispiel überspringen wir das erste Element:

source.stream() .skip(1) .forEachOrdered(target::add);

Es ist möglich, die Elemente nach unseren Bedürfnissen zu filtern. Zum Beispiel der Integer-Wert:

source.stream() .filter(i -> i > 10) .forEachOrdered(target::add);

Schließlich gibt es Szenarien, in denen wir nullsicher arbeiten möchten. Für diese können wir Optional verwenden :

Optional.ofNullable(source).ifPresent(target::addAll)

Im obigen Beispiel fügen wir Elemente von der Quelle zum Ziel mit der Methode addAll hinzu .

5. Schlussfolgerung

In diesem Artikel haben wir verschiedene Möglichkeiten untersucht, um einer bereits initialisierten ArrayList mehrere Elemente hinzuzufügen .

Codebeispiele finden Sie wie immer auf GitHub.