Gibt es eine gute Möglichkeit, Java-Streams zum Verschachteln von Elementen in einem Stream mit einem Trennzeichen des gleichen Typs zu verwenden?Elemente in einem Stream mit Trennzeichen verschachteln
// Expected result in is list: [1, 0, 2, 0, 3]
List<Integer> is = Stream.of(1, 2, 3).intersperse(0).collect(toList());
Dies ist ähnlich der intersperse
Funktion in Haskell und anderen funktionalen Sprachen.
Ich habe viele Beispiele gesehen, wie man Strings auf ähnliche Weise verknüpft, aber keine Lösungen für allgemeine Listen gefunden hat.
+1 Wenn Sie wissen, die Größe 'n' von der ursprünglichen Liste könnten Sie '.limit (2 * n-1)' verwenden. –
@tobias_k Das ist wahr – Eran
Danke. Aber nicht ein schließendes Trennzeichen zu bekommen, ist eine Frage. Und die Verwendung von 'limit' ist hier etwas zu plump. Aber es ist auch gut, eine Lösung zu haben, wenn Sie ein schließendes Trennzeichen haben wollen! – Lii