Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Java

Java 9 Stream API : takeWhile, dropWhile, iterate, ofNullable

Les Streams (Java 8) permettent le traitement déclaratif de séquences. Java 9 ajoute quatre méthodes utiles.

1. takeWhile(Predicate)

Prend les éléments tant que le prédicat est true (préfixe le plus long).

default Stream<T> takeWhile(Predicate<? super T> predicate)

Exemple

Stream.of("a","b","c","","e","f")
      .takeWhile(s -> !s.isEmpty())
      .forEach(System.out::print); // Sortie: abc

S'arrête à la première chaîne vide.

2. dropWhile(Predicate)

Jette les éléments initiaux tant que le prédicat est true, puis garde le reste.

default Stream<T> dropWhile(Predicate<? super T> predicate)

Exemple

Stream.of("a","b","c","","e","f")
      .dropWhile(s -> !s.isEmpty())
      .forEach(System.out::print); // Sortie: ef

Stream.of("a","b","c","","e","","f")
      .dropWhile(s -> !s.isEmpty())
      .forEach(System.out::print); // Sortie: ef

3. iterate(seed, hasNext, next)

Version avec condition d'arrêt (hasNext).

static <T> Stream<T> iterate(T seed, Predicate<? super T> hasNext, UnaryOperator<T> next)

Exemple

IntStream.iterate(3, x -> x < 10, x -> x + 3)
         .forEach(System.out::println);
// Sortie: 3, 6, 9 (s'arrête avant 12)

4. ofNullable(T)

Crée un stream d'un élément si non-null, sinon stream vide. Évite NullPointerException et vérifications null.

static <T> Stream<T> ofNullable(T t)

Exemple

Stream.ofNullable(100).count(); // 1
Stream.ofNullable(null).count();  // 0

Ces méthodes rendent l'API Stream plus expressive pour les cas courants de filtrage conditionnel et de génération contrôlée.

Java

  1. Maîtriser les opérateurs Java : Types, syntaxe et exemples pratiques
  2. Commentaires Java : Types, utilisation et bonnes pratiques
  3. Maîtriser la boucle for améliorée en Java : Syntaxe, exemples et bonnes pratiques
  4. Maîtriser les chaînes de caractères en Java : Création, méthodes et bonnes pratiques
  5. Maîtriser les interfaces Java : concepts, implémentation et bonnes pratiques
  6. Maîtriser les classes internes anonymes en Java : définition, syntaxe et exemples pratiques
  7. Maîtriser le try-with-resources Java : gestion automatique des ressources expliquée
  8. Annotations Java expliquées : types, placement et exemples pratiques
  9. Assertions Java : guide pratique pour détecter les bugs et assurer la fiabilité du code