0
点赞
收藏
分享

微信扫一扫

Java8新特性 - Stream - 05 - Stream的filter()方法详解

东林梁 2022-03-16 阅读 120

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!

总结

写到这里也结束了,在文章最后放上一个小小的福利,以下为小编自己在学习过程中整理出的一个关于 java开发 的学习思路及方向。从事互联网开发,最主要的是要学好技术,而学习技术是一条慢长而艰苦的道路,不能靠一时激情,也不是熬几天几夜就能学好的,必须养成平时努力学习的习惯,更加需要准确的学习方向达到有效的学习效果。

由于内容较多就只放上一个大概的大纲,需要更及详细的学习思维导图的 点击我的Gitee获取。
还有 高级java全套视频教程 java进阶架构师 视频+资料+代码+面试题!

全方面的java进阶实践技术资料,并且还有技术大牛一起讨论交流解决问题。

举报

相关推荐

0 条评论