Maison >Java >javaDidacticiel >Comment puis-je associer des éléments successifs d'un flux en Java ?
Appairage d'éléments successifs à partir d'un flux
Dans le domaine de la programmation, il devient souvent nécessaire de transformer un flux d'éléments en paires d'éléments successifs valeurs. Pour réaliser cette transformation, le flux initial doit être manipulé d'une manière spécifique.
Les méthodes traditionnelles impliquent l'utilisation d'une boucle pour parcourir les éléments et la création manuelle de paires. Cependant, dans Java 8 et versions ultérieures, les flux offrent une approche plus élégante et efficace.
Solution
L'API Java 8 Streams possède une prise en charge limitée des étapes de pipeline avec état. Cela présente des défis lorsque l'on tente de récupérer des éléments de flux adjacents ou d'obtenir leurs index.
Une solution à ces limitations consiste à piloter le flux par index. En utilisant une structure de données comme ArrayList, qui accorde un accès aléatoire à ses éléments, on peut générer les paires :
IntStream.range(1, arrayList.size()) .mapToObj(i -> new Pair(arrayList.get(i-1), arrayList.get(i))) .forEach(System.out::println);
Bien que cette méthode offre le parallélisme, elle a la limitation d'être inadaptée aux flux d'entrée infinis.
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!