流的终结操作
1、long count()
返回流中元素的数量。
2、Optional<T> max(Comparator<? super T> comparator)
返回这个流中按比较器排序的最大值。如果流为空,返回一个空的Optional对象。
3、Optional<T> min(Comparator<? super T> comparator)
返回这个流中按比较器排序的最小值。如果流为空,返回一个空的Optional对象。
4、Optional<T> findFirst()
返回这个流的第一个元素。如果流为空,返回一个空的Optional对象。
5、Optional<T> findAny()
返回这个流的任意一个元素。如果流为空,返回一个空的Optional对象。
6、boolean anyMatch(Predicate<? super T> predicate)
流中任意元素满足断言时,返回true。
7、boolean allMatch(Predicate<? super T> predicate)
流中所有元素满足断言时,返回true。
8、boolean noneMatch(Predicate<? super T> predicate)
流中没有元素满足断言时,返回true。
9、Iterator<T> iterator()
产生一个用于获取当前流中各个元素的迭代器。
10、void forEach(Consumer<? super T> action)
在流的每个元素上调用action。
11、Object[] toArray()
产生一个对象数组。
12、<A> A[] toArray(IntFunction<A[]> generator)
将引用A[]::new 传递给构造器时,返回一个A类型的数组。
13、<R, A> R collect(Collector<? super T,A,R> collector)
使用给定的收集器来收集当前流中的元素。
Oprional对象的介绍可以参考:https://mp.csdn.net/mp_blog/creation/editor/118685149