Java8的lambda表达式遍历集合

Java8 lambda 表达式遍历集合

遍历List

示例

List<Strudent> list = new ArrayList<Strudent>() {{
            add(new Strudent("b", 11, "女"));
            add(new Strudent("a", 19, "男"));
            add(new Strudent("d", 15, "女"));
            add(new Strudent("c", 22, "男"));
}};

list.stream().forEach(student -> {
     if (student.getAge() < 20) 
     	System.out.println(student.toString());
});

上面一种是直接遍历结束之后过滤结果
还有一种是先过滤条件后遍历集合

List<Strudent> list = new ArrayList<Strudent>() {{
            add(new Strudent("b", 11, "女"));
            add(new Strudent("a", 19, "男"));
            add(new Strudent("d", 15, "女"));
            add(new Strudent("c", 22, "男"));
        }};

list.stream().filter(student -> {
	student.getAge() < 20
}).forEach(student -> {
	System.out.println(student.toString());
	}
});

运行结果

Strudent{name=‘b’, age=11, sex=‘女’}
Strudent{name=‘a’, age=19, sex=‘男’}
Strudent{name=‘d’, age=15, sex=‘女’}

遍历list中某个元素

list.stream().filter(Objects :: nonNull).map(Strudent::getId).filter(id->id!=null).forEach(id->{
            System.out::println
});

遍历map

 public static void main(String[] args) {
        Map<String, String> map = new HashMap<String, String>() {{
            put("a", "haha");
            put("b", "hahaha");
            put("d", "hahe");
            put("c", "haheeee");
        }};

        map.forEach((k, v) -> {
            System.out.print("key=" + k);
            System.out.print("\t");
            System.out.println("value=" + v);
        });

}

输出结果
key=a value=haha
key=b value=hahaha
key=c value=haheeee
key=d value=hahe

以上都是lambda中最简单的一些应用;后续还会介绍一些其他的方法.

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值