Stream流中的常用方法_filter和Stream流的特点_只能使用一次
作者:互联网
Stream流中的常用方法_filter
Stream流中的常用方法_filter:用于对Stream流中的数据进行过滤
Stream<T> filter(Predicate<? super T> predicate);
filter方法的参数Predicate是一个函数式接口,所以可以传递Lambda表达式,对数据进行过滤
Predicate中的抽象方法:
boolean test(T t);
代码实现:
//创建一个Stream流 Stream<String> stream = Stream.of("张三", "李四", "王五", "赵六", "李强"); //对Stream流中的元素进行过滤,只要姓张的人 Stream<String> stream1 = stream.filter((String name) -> { return name.startsWith("张"); }); //遍历stream2流 stream1.forEach(name-> System.out.println(name));
Stream流的特点_只能使用一次
Stream流属于管道流,只能被消费(使用)一次
第一个Stream流调用完毕方法,数据就会流转到下一个Stream上
而这时第一个Stream流已经使用完毕,就会关闭了
所以第一个Stream流就不能再调用方法了
代码实现:
//管道流 //遍历stream流 stream.forEach(name-> System.out.println(name));
搜索
复制
标签:Stream,Predicate,name,stream,流中,filter 来源: https://www.cnblogs.com/12-12-12/p/16501046.html