JDK8 Stream API 进阶篇(1)

随着JDK8使用的普及,现在大家对Stream流的一些常见API及写法也越来越熟悉了。
其中很多API写的时候感觉很繁琐,想要更快捷一些,这时候工具类就出来了,对一些常见写法的进一步封装,简化代码量,真的谁用谁爽。

我今天就是想把这个好用的工具类推给你们的,收了我这波安利吧!!!

1. 对Collectors.groupingBy函数逐步增加参数。

List<Student> list = Arrays.asList(
                new Student("张三", 18, "男"),
                new Student("李四", 28, "男"),
                new Student("张三", 18, "女")
        );
// 最简单的一次分组
Map<String, List<Student>> map1 = list.stream().collect(Collectors.groupingBy(Student::getName));
// collectors 二次分组
Map<String, Map<String, List<Student>>> map2 = list.stream().collect(
       Collectors.groupingBy(Student::getName,
               Collectors.groupingBy(Student::getSex, Collectors.toList()))
);
// collectors 二次分组再规约
Map<String, Map<String, List<Integer>>> map3 = list.stream(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值