Wenn du die Liste der Listen reduzieren willst (ich meine, du meinst, dass sie flacher ist), solltest du es so machen:
%Vor% Bei Verwendung von reduce
sollte der erste Wert der Identitätswert sein, was in Ihrer Implementierung nicht der Fall ist. Ihre Lösung führt zu unerwarteten Ergebnissen, wenn der Stream parallel ausgeführt wird (weil addAll
die Liste an Ort und Stelle ändert) In diesem Fall ist der Identitätswert die gleiche Liste für Teilergebnisse.
Sie müssten den Inhalt der unvollständigen Ergebnisliste kopieren und die andere Liste hinzufügen, damit sie funktioniert, wenn die Pipeline parallel ausgeführt wird:
%Vor%Tags und Links java-8 java-stream