Heim >Java >javaLernprogramm >Wie kann ich eine Liste von Listen in Java 8 zu einer einzigen Liste zusammenfassen?

Wie kann ich eine Liste von Listen in Java 8 zu einer einzigen Liste zusammenfassen?

DDD
DDDOriginal
2024-12-17 16:39:10765Durchsuche

How Can I Flatten a List of Lists into a Single List in Java 8?

Konvertieren einer Liste von Listen in eine Liste in Java 8

Beim Arbeiten mit verschachtelten Listen kann es nützlich sein, sie zu einer einzigen Liste zusammenzufassen. lineare Liste zur einfacheren Iteration und Verarbeitung. Java 8 bietet mehrere Methoden, die diese Aufgabe erfüllen können.

Ein effektiver Ansatz ist die Verwendung der flatMap-Operation. Nehmen wir an, wir haben ein List> benannte Liste, die wir reduzieren möchten. Der folgende Code zeigt, wie dies erreicht wird:

import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

List<List<Object>> list = ...

List<Object> flat = list.stream()
    .flatMap(Stream::of)
    .collect(Collectors.toList());

flatMap nimmt jedes Element in der Liste, bei der es sich um eine weitere Liste von Objekten handelt, und wandelt es in einen Stream um. Die einzelnen Objekte aus jeder Unterliste werden dann zu einem einzigen Stream zusammengeführt. Schließlich konvertieren wir diesen abgeflachten Stream mithilfe von Collectors.toList() wieder in eine Liste.

Diese Lösung nutzt die Leistungsfähigkeit von Streams, um komplexe Datenmanipulationsaufgaben zu vereinfachen. Durch die Verwendung von flatMap können wir verschachtelte Listen einfach in eine einzige, lineare Darstellung entrollen.

Das obige ist der detaillierte Inhalt vonWie kann ich eine Liste von Listen in Java 8 zu einer einzigen Liste zusammenfassen?. 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