1.方法介绍
【方法签名】Stream<T> filter(Predicate<? super T> predicate);
【方法属性】非终结方法
【方法参数】函数式接口 Predicate , 因此可以直接传入一个Lambda表达式
【方法作用】过滤stream中的元素,返回符合条件的元素到一个新的stream中
【方法返回值】 Stream<T> 一个新的Stream对象,可以继续支持链式调用
2.案例代码
2.1 代码
package com.northcastle.I_stream;
import java.util.ArrayList;
import java.util.stream.Stream;
public class StreamTest04Filter {
public static void main(String[] args) {
//1.准备一个List集合
ArrayList<String> list = new ArrayList<>();
list.add("aa");
list.add("bb");
list.add("cc");
list.add("ddddd");
list.add("eee");
list.add("ffffff");
list.add("ggg123");
list.add("a");
//2.获取Stream对象
Stream<String> streamList = list.stream();
//3.先进行过滤【长度大于3的字符串】;再将过滤的结果打印
streamList
.filter(s -> s.length() > 3)
.forEach(System.out::println);
}
}
2.2 执行结果
3.完成
Congratulations!
You are one step closer to success!
版权声明:本文为qq_39505245原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。