Listen in Java zusammenführen, ohne Originale zu ändern
In Java ist das Zusammenführen mehrerer Listen zu einer neuen eine häufige Aufgabe. Der in der Frage erwähnte Ansatz erfordert jedoch eine Änderung der ursprünglichen Listen, was möglicherweise nicht immer wünschenswert ist.
Java 8 Stream Concatenation
Java 8 führte die Stream-API ein Dies bietet eine prägnantere und unveränderliche Möglichkeit, Sammlungen zu bearbeiten. Für die Listenverkettung können Sie die Methode concat() verwenden, um die Streams zweier Listen zusammenzuführen:
List<String> newList = Stream.concat(listOne.stream(), listTwo.stream()) .collect(Collectors.toList());
Diese Methode erstellt eine neue Liste, ohne die Originale zu ändern, da sie mit Streams arbeitet, die im Wesentlichen Wrapper sind die Quellsammlungen.
Java 16 toList() Verbesserung
Von Java Ab 16 ist ein einfacherer Ansatz mit der aktualisierten toList()-Methode verfügbar:
List<String> newList = Stream.concat(listOne.stream(), listTwo.stream()).toList();
Dies vereinfacht den Code, indem die Notwendigkeit einer Collect()-Operation entfällt, wodurch der Listenverkettungsprozess weiter optimiert wird.
Bonus: JDK 1.3-Version
Für JDK 1.3, Sie können die folgende Technik verwenden:
List<String> newList = new ArrayList<String>(listOne.size() + listTwo.size()); newList.addAll(listOne); newList.addAll(listTwo);
Diese Methode erstellt eine neue ArrayList mit einer Größe, die beide Originallisten aufnimmt, und fügt dann die Elemente aus jeder Liste hinzu. Obwohl es nicht so prägnant ist wie die Stream-basierten Ansätze, liefert es dennoch ein unveränderliches Ergebnis.
Das obige ist der detaillierte Inhalt vonWie verkette ich Listen in Java, ohne die Originale zu ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!