Heim >Java >javaLernprogramm >Wie implementiert man „takeWhile' in Java 8 Streams?
So begrenzen Sie einen Stream, bis ein Prädikat fehlschlägt
Java 8-Streams bieten einen leistungsstarken Satz von Operationen zum Bearbeiten und Verarbeiten von Daten. Zu diesen Operationen gehört die Notwendigkeit, einen Stream zu begrenzen, bis das erste Element nicht mehr mit einem bestimmten Prädikat übereinstimmt. In dieser Frage wird untersucht, wie diese Funktionalität in Java 8 erreicht werden kann.
In Java 9 wurde die takeWhile-Operation eingeführt, mit der ein Stream basierend auf einem Prädikat begrenzt werden kann. Für Java 8 müssen wir jedoch eine alternative Lösung finden.
Lösung
Um takeWhile in Java 8 zu implementieren, können wir den folgenden Ansatz verwenden:
Hier ist ein Beispielcode:
IntStream .iterate(1, n -> n + 1) .filter(n -> n < 10) .limit(-1) .forEach(System.out::println);
In JDK 9 kann die takeWhile-Operation direkt verwendet werden, wie im folgenden Beispiel gezeigt:
IntStream .iterate(1, n -> n + 1) .takeWhile(n -> n < 10) .forEach(System.out::println);
Das obige ist der detaillierte Inhalt vonWie implementiert man „takeWhile' in Java 8 Streams?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!