当前位置 : 主页 > 编程语言 > java >

Java8-Stream流(中间操作)filter

来源:互联网 收集:自由互联 发布时间:2022-07-04
一 filter 1.遍历数据并检查其中的元素时,可尝试使用Stream中提供的新方法filter,称为filter模式。该模式的核心思想是 保留Stream中的一些元素,而过滤掉其他的。 /** * @Author yqq * @Date 202

一 filter

1.遍历数据并检查其中的元素时,可尝试使用Stream中提供的新方法filter,称为filter模式。该模式的核心思想是 保留Stream中的一些元素,而过滤掉其他的。

Java8-Stream流(中间操作)filter_java



/**
* @Author yqq
* @Date 2021/4/11 0:04
* @Version 1.0
*/
public class FilterDemo {
public static void main(String[] args) {
List<String> list=new ArrayList<>();
list.add("科比");
list.add("詹姆斯");
list.add("安东尼");
list.add("瓦妮莎");
//利用filter掉所有人,保留科比老婆 瓦妮莎
List<String> stringList=list
.stream()
.filter(e -> e.startsWith("瓦"))
.collect(Collectors.toList());
System.out.println(stringList);
/**
* filter和map很像,filter接受一个函数作为参数,该函数用Lambda表达式表示。该函数和前面
* if条件判断语句的功能一样,如果字符串开头为瓦,则返回true。若要重构
* 遗留代码,for循环中的if条件语句就是一个很强的信号,可用filter方法替代。
*/
}
}
//输出结果:[瓦妮莎]

2.由于此方法和if条件语句的功能相同,因此其返回值肯定是true或者false。经过过滤,
Stream中符合条件的,即Lambda表达式值为true的元素被保留下来。该Lambda表达式
的函数接口正是Predicate

Java8-Stream流(中间操作)filter_条件语句_02


上一篇:Java8-Stream流(最终操作)max和min
下一篇:没有了
网友评论