Dans Java 9, Oracle Corporation a ajouté quatre nouvelles méthodes utiles à Stream API Ces méthodes sont iterate(), ofNullable(), takeWhile() et dropWhile(). .
Le iterate() peut être utilisé comme remplacement de version de flux des for-loops traditionnelles. Cette méthode a été améliorée en ajoutant un autre paramètre, l'interface Predicate qui nous permet d'arrêter ces interminables. nombres basés sur des conditions définies avec la Predicate interface.
import java.util.stream.Stream; public class StreamIterateMethodTest { public static void main(String[] args) { Stream.<strong>iterate</strong>(1, i -> i < 5, i -> i + 1).<strong>forEach</strong>(System.out::println); <strong>// iterate()</strong> } }
<strong>1 2 3 4</strong>
ofNullable() renvoie un lorsque l'élément n'est pas nul objet flux . Sinon, un flux vide est renvoyé.
import java.util.stream.Stream; public class StreamOfNullableMethodTest { public static void main(String[] args) { String str = "TutorialsPoint"; Stream.<strong>ofNullable</strong>(str).<strong>forEach</strong>(System.out::println); <strong> // ofNullable() method</strong> } }
<strong>TutorialsPoint </strong>
Le paramètre passé à une méthode takeWhile() est une Predicate interface. Cette méthode prend un élément de l'objet stream de gauche à gauche. right jusqu'à ce que la condition de l'objet Predicate ne soit plus remplie.
Exempleimport java.util.stream.Stream; public class StreamTakeWhileMethodTest { public static void main(String[] args) { Stream.of(1, 2, 3, 4, 5) .<strong>takeWhile</strong>(i -> i < 5) <strong>// takeWhile() method</strong> .<strong>forEach</strong>(System.out::println); } }
<strong>1 2 3 4</strong>
dropWhile()
Le paramètre passé à la méthodedropWhile() est également un Interface Prédicat . C'est l'opposé de la méthode takeWhile(). Cette méthode transmet chaque élément de l'objet stream séquentiellement de de gauche à droite et ignore tous les éléments qui remplissent la condition. Une fois que la condition n'est plus remplie, il renvoie tous les éléments restants.
Exempleimport java.util.stream.Stream; public class StreamDropWhileMethodTest { public static void main(String[] args) { Stream.of(3, 2, 1, 4, 6, 7, 8, 9, 10) .<strong>dropWhile</strong>(i -> i < 5) <strong>// dropWhile() method</strong> .<strong>forEach</strong>(System.out::println); } }
<strong>6 7 8 9 10</strong>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!