Heim >Java >javaLernprogramm >Wie kann ich zwei Listen in Java effizient kombinieren?

Wie kann ich zwei Listen in Java effizient kombinieren?

Susan Sarandon
Susan SarandonOriginal
2024-12-08 20:28:10805Durchsuche

How Can I Efficiently Combine Two Lists in Java?

Zwei Listen in Java effizient zusammenführen

Das Zusammenführen mehrerer Listen zu einer einzigen Sammlung ist eine häufige Aufgabe in Java. Während das mit addAll() bereitgestellte Codesegment funktionsfähig ist, erfordert es das Erstellen einer neuen Liste und das Durchlaufen beider Originallisten, was bei großen Datensätzen ineffizient sein kann.

Java 8 und höher:

Für Java 8 und nachfolgende Versionen ist die Nutzung von Java-Streams ein prägnanterer und effizienterer Ansatz:

List<String> newList = Stream.concat(listOne.stream(), listTwo.stream())
                             .collect(Collectors.toList());

Dieser Code erstellt einen neuen Stream, indem er die Streams beider Listen verkettet und die Elemente in einer neuen Liste mit dem Namen newList sammelt. Es behält die ursprünglichen Listen bei und führt den Vorgang träge aus, wodurch der Speicherverbrauch minimiert und die Leistung verbessert wird.

Java 16 und höher:

In Java 16 und höher eine vereinfachte Version der Stream-basierten Lösung kann verwendet werden:

List<String> newList = Stream.concat(listOne.stream(), listTwo.stream()).toList();

Dieser Code nutzt die in Java eingeführte toList()-Methode 16, der eine neue Liste direkt aus dem Stream erstellt, ohne dass ein expliziter Collector erforderlich ist.

Das obige ist der detaillierte Inhalt vonWie kann ich zwei Listen in Java effizient kombinieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn