Rupture ou retour du flux Java 8 forEach
Comme l'itération externe utilisant des boucles for-each améliorées, l'itération interne avec les expressions lambda Java 8 nécessite une approche différente pour casser ou retourner. La sortie d'une boucle for-each peut être réalisée à l'aide de l'instruction break ou en renvoyant l'objet actuel.
Dans le cas du stream forEach, ni break ni return ne peuvent être utilisés. La raison en est que forEach est une opération de terminal, ce qui signifie qu'elle exécute un effet secondaire sur chaque élément et ne renvoie aucune valeur.
Alternatives pour rompre ou revenir du flux forEach
Au lieu de cela, il faut envisager d'utiliser d'autres méthodes de flux qui offrent des fonctionnalités différentes :
Exemple de code
Utilisation de filter() pour trouver le premier élément qui satisfait une condition :
<code class="java">Optional<SomeObject> result = someObjects.stream().filter(obj -> some_condition_met).findFirst();</code>
Utiliser anyMatch() pour déterminer si un élément répond à un prédicat :
<code class="java">boolean result = someObjects.stream().anyMatch(obj -> some_condition_met);</code>
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!