Conversion d'un itérateur en flux : une approche concise
Il devient souvent nécessaire de convertir un itérateur en flux pour tirer parti du puissant flux capacités de traitement en Java. Voici une manière concise d'y parvenir :
Utilisation d'un Spliterator :
<code class="java">Iterator<String> sourceIterator = Arrays.asList("A", "B", "C").iterator(); Stream<String> targetStream = StreamSupport.stream( Spliterators.spliteratorUnknownSize(sourceIterator, Spliterator.ORDERED), false);</code>
Cette approche vous permet de créer un flux efficacement sans créer de collection intermédiaire.
Alternativement, vous pouvez utiliser un Iterable pour créer un flux :
<code class="java">Iterator<String> sourceIterator = Arrays.asList("A", "B", "C").iterator(); Iterable<String> iterable = () -> sourceIterator; Stream<String> targetStream = StreamSupport.stream(iterable.spliterator(), false);</code>
Cette méthode est plus facile à lire et conserve le style de programmation fonctionnelle.
En utilisant ces techniques, vous pouvez convertir efficacement un Iterator en un Stream, vous permettant d'exploiter toute la puissance des flux pour le traitement et la manipulation des données.
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!