L'API de flux est une API qui effectue des opérations d'agrégation basées sur des sources de données telles que des collections et des tableaux. Cet article décrit la classe Collectors, qui est l'une des opérations d'arrêt. La classe Collectors implémente l'interface Collector. La méthode collect () peut collecter des éléments d'un flux en un seul objet.
(1) <R,A> R collect(Collector<? super T,A,R> collector) (2) <R> R collect(Supplier<R> supplier,BiConsumer<R ? superT> accumulator, BiConsumer<R,R> combiner)
(1) Collector<T,?,List<T>> toList() (2) Collector<T,?,Integer> summingInt() (3) Collector<T,?,Double> averagingInt()
Myclass.java
Stream<String> stream = Steam.of("aa","bb","cc");
//Répertorier les flux avec toList
List<String> result1 = stream.collect(Collectors.toList());
System.out.print(result1); //[aa,bb,cc]
//summingInt donne la somme de tous les bundles
Integer result2 = stream.collect(Collectors.summingInt(x->x.length());
System.out.print(result2); //6
//moyennagingInt trouve la valeur moyenne du flux
Double result3 = stream.collect(Collectors.averagingInt(x->x.length()));
System.out.print(result2); //2.0
La classe Colectors a l'image du "traitement d'exécution en tant que groupe".
Recommended Posts