Mehrere Elemente zu einer Java ArrayList hinzufügen

Hinzufügen mehrerer Elemente zu einer Java ArrayList

1. Übersicht überArrayList

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

Eine Einführung in die Verwendung vonArrayList finden Sie unterto this article here.

2. AddAll

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

Zunächst verwenden wiraddAll(), 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 inanotherList.

Aus diesem Grund wirkt sich jede in einem dieser Elemente vorgenommene Änderung auf beide Listen aus.

3. Collections.addAll

Die KlasseCollectionsbesteht ausschließlich aus statischen Methoden, die Sammlungen bearbeiten oder zurückgeben.

Eines davon istaddAll, für das eine Zielliste erforderlich ist, 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);

Ein weiteres Beispiel für die Operation mit zwei Arrays:

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. Java verwenden 8

Diese Java-Version eröffnet unsere Möglichkeiten, indem sie neue Tools hinzufügt. Das, was wir in den nächsten Beispielen untersuchen werden, istStream:

List source = ...;
List target = ...;

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

Die Hauptvorteile dieser Art sind die Möglichkeit, Überspringen und Filtern 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 wollen. Für diese können wirOptional verwenden:

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

Im obigen Beispiel fügen wir Elemente vonsource zutarget nach der MethodeaddAll hinzu.

5. Fazit

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

Wie immer finden sich Codebeispiele inover on GitHub.