1、Stream<T> filter(Predicate<? super T> predicate)
返回一个流,它包含当前流中所有满足断言条件的元素。
2、<R> Stream<R> map(Function<? super T, ? extends R> mapper)
返回一个流,它包含将mapper应用于当前流中所有元素所产生的结果。
3、<R> Stream<R> flatMap(Function<? super T, ? extends Stream<? extends R>> mapper)
返回一个流,通过将mapper应用于当前流中所有元素所产生的结果(是一个个的流),摊平为一个流。
4、Stream<T> limit(long maxSize)
返回一个流,包含当前流中最初的maxSize个元素。
5、Stream<T> skip(long n)
返回一个流,包含除前n个元素之外的元素。
6、static <T> Stream<T> concat(Stream<? extends T> a, Stream<? extends T> b)
返回一个流,它的元素是a与b的元素连接起来。
7、Stream<T> distinct()
返回一个流,包含当前流中所有不同的元素。需要T重写equal和hashCode方法。
8、Stream<T> sorted()
返回一个流,它的元素是当前流中的元素排序结果。需要T实现Comparable接口。
9、Stream<T> sorted(Comparator<? super T> comparator)
返回一个流,它的元素是当前流中的元素排序结果。
10、Stream<T> peek(Consumer<? super T> action)
返回一个流,与当前流中的元素相同。中间会执行action。主要用来调试。