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));
posted on 2022-07-21 10:28  淤泥不染  阅读(520)  评论(0)    收藏  举报