public static <T> Collector<T,?,Long> counting()
该方法简单的讲就是计算元素的数量;类似如下方法:
void test20() {
List<Integer> list = List.of(2,5,8,9,4,20,11,43,55);
Integer sum = list.stream().reduce(Integer.valueOf(0), (a,b) -> a+1, Integer::sum);
System.out.println(sum);
Integer sum2 = list.stream().collect(Collectors.reducing(0, a->1, Integer::sum));
System.out.println(sum2);
Long lo = list.stream().collect(Collectors.counting());
System.out.println(lo);
}
以上三个输出结果都是9。
统计集合数量的方法有很多,例如上面三个例子,最后一个是counting方法使用最简便,这就是存在的理由。