在Java 8中,有一个由Collectors类counting()方法返回的预定义counting()方法,以对Stream中的元素数进行计数。
用法:
public static Collector counting() Where, output is a Collector, acting on a Stream of elements of type T, with its finisher returning the ‘collected’ value of type Long. It is a terminal operation which returns the total count of elements in the stream which reach the collect() method after undergoing various pipelined stream operations such as filtering.
范例1:计算整数流中的元素。
// Java code to count number of elements
// in stream
import java.util.stream.Stream;
import java.util.stream.Collectors;
class counting {
public static void main(String[] args)
{
// creating stream of integers
Stream i = Stream.of(1, 2, 3, 4, 5, 6);
// counting number of integer in stream
long count_int = i.collect(Collectors.counting());
System.out.println(count_int);
}
}
输出:
6
范例2:计算String流中的元素。
// JAVA code to count number of elements in stream
import java.util.stream.Stream;
import java.util.stream.Collectors;
class counting {
public static void main(String[] args)
{
// creating stream of strings
Stream s = Stream.of("Akash","Harsh",
"Shubham","Nishant","Pratik");
// counting number of strings in stream
long count_string = s.collect(Collectors.counting());
System.out.println(count_string);
}
}
输出:
5