Lambda【1】-- List 相关 Lambda 表达式使用(上篇)
Lambda在jdk1.8
里面已经很好用了,在这里不讲底层的实现,只有简单的用法,会继续补全。
首先一个list我们要使用lambda
的话,需要使用它的stream()
方法,获取流,才能使用后续的方法。
基础类User.java
1.遍历元素
使用foreach方法,其中s->
里面的s指list里面的每一个元素,针对每一个元素都执行后续的方法。如果里面只有一句话,可以直接缩写foreach(n -> System.out.println(n));
,如果需要执行的方法里面有两句或者多句需要执行的话,需要可以使用list.stream().forEach(s -> {System.out.println(s);});
形式。
2.转化里面的每一个元素
map是需要返回值的,s代表里面的每一个元素,return 处理后的返回值
3.条件过滤筛选
使用filter函数,里面的表达式也是需要返回值的,返回值应该为boolean类型,也就是符合条件的就保留在list里面,不符合条件的就被过滤掉。
4.取出list里面的对象中的元素,返回一个特定的list
这个可以让我们取出list集合中的某一个元素,也是使用map即可。
5.分组
可以根据某一个属性来分组,获得map
6.对某一个属性进行求和
比如我们需要对年龄进行求和,可以使用mapToInt(),里面参数应该使用类名:方法名
,最后需要使用sum()来求和。
7.将list转化成map
比如我们需要list里面的对象的id和这个对象对应,那就是需要转换成map。需要在collect()方法里面使用Collectors的toMap()方法即可,参数就是key和value。
此文章仅代表自己(本菜鸟)学习积累记录,或者学习笔记,如有侵权,请联系作者删除。人无完人,文章也一样,文笔稚嫩,在下不才,勿喷,如果有错误之处,还望指出,感激不尽~
技术之路不在一时,山高水长,纵使缓慢,驰而不息。
公众号:秦怀杂货店
版权声明: 本文为 InfoQ 作者【秦怀杂货店】的原创文章。
原文链接:【http://xie.infoq.cn/article/cc833f8c674bfd682b3e6d250】。文章转载请联系作者。
评论