stream().map().collect()用法
有一个集合:
List users = getList(); //从数据库查询的用户集合
现在想获取User的身份证号码;在后续的逻辑处理中要用;
常用的方法我们大家都知道,用for循环,
List idcards=new ArrayList();//定义一个集合来装身份证号码
for(int i=0;i<users.size();i++){idcards.add(users.get(i).getIdcard());}
这种方法要写好几行代码,有没有简单点的,有,java8 API能一行搞定:
List<String> idcards= users.stream().map(User::getIdcard).collect(Collectors.toList())
解释下一这行代码:
users:一个实体类的集合,类型为List
User:实体类
getIdcard:实体类中的get方法,为获取User的idcard
stream()优点
无存储。stream不是一种数据结构,它只是某种数据源的一个视图,数据源可以是一个数组,Java容器或I/O channel等。
为函数式编程而生。对stream的任何修改都不会修改背后的数据源,比如对stream执行过滤操作并不会删除被过滤的元素,而是会产生一个不包含被过滤元素的新stream。
惰式执行。stream上的操作并不会立即执行,只有等到用户真正需要结果的时候才会执行。
可消费性。stream只能被“消费”一次,一旦遍历过就会失效,就像容器的迭代器那样,想要再次遍历必须重新生成。
stream().map()方法的使用示例:
再看几个例子:数组字母小写变大写
List<String> list= Arrays.asList("a", "b", "c", "d");List<String> collect =list.stream().map(String::toUpperCase).collect(Collectors.toList());
System.out.println(collect); //[A, B, C, D]
数组所有元素,按某种规律计算:
List num = Arrays.asList(1,2,3,4,5);
List collect1 = num.stream().map(n -> n * 2).collect(Collectors.toList());
System.out.println(collect1); //[2, 4, 6, 8, 10]
stream().map().collect()用法相关推荐
- java8 stream().map().collect()用法
java8 stream().map().collect()用法 有一个集合: List<User> users = getList(); //从数据库查询的用户集合 现在想获取User的 ...
- Stream的特性、用法、stream().map().collect()用法
Stream的特性.用法.stream().map().collect()用法 1.举例说明 有一个集合: List<User> users = getList(); 现在想获取User的 ...
- 通俗易懂,java8 .stream().map().collect()用法
API: https://www.runoob.com/java/java8-streams.html 模板: mylist.stream().map(myfunction->{return i ...
- JAVA Stream的collect用法与原理(详解)
初识Collector 先看一个简单的场景: 现有集团内所有人员列表,需要从中筛选出上海子公司的全部人员 假定人员信息数据如下: 姓名 子公司 部门 年龄 工资 大壮 上海公司 研发一部 28 300 ...
- java8 .stream().map().collect() 的用法
API: https://www.runoob.com/java/java8-streams.html mylist.stream().map(myfunction->{return item; ...
- java8 stream().map().collect()的Collectors.toList()、Collectors.toMap()、Collectors.groupingBy()的
一.Collectors.toList() 现在有个集合: List<User> users = getUserList(); 现在需要将这些user的id提取出来.这个很简单,for循环 ...
- strm().filter().collect()和stream().map().collect()的作用
在看代码的时候看到了相关方法,自己在写了个例子练习一下 public class People {private Integer id;private String name;private Bool ...
- stream().map()
Stream作为Java 8的一大特点,是对集合对象功能的增强,***.stream().map(...).collect(Collectors.toList())中,***需要是一个List类型的对 ...
- stream之map的用法
map函数的作用就是针对管道流中的每一个数据元素进行转换操作. 一.Stream管道流map的基础用法 最简单的需求:将集合中的每一个字符串,全部转换成大写! List<String> a ...
最新文章
- python运行程序-一文看懂python程序的执行过程
- python二次开发攻略-ABAQUS Python二次开发攻略
- scala外部传入时间参数-亲测有效
- 《Arduino奇妙之旅:智能车趣味制作天龙八步》一2.4 准备好了吗?
- 使用VS制作MFC、libmysql.dll出现计算机缺少msvcr120.dll和msvcp120.dll问题
- 设计模式——创建型模型
- linux 下 .sh 文件语法
- 知名视频编辑工具:达芬奇剪辑调色软件 DaVinci Resolve Studio Mac v17.3.1
- OpenJDK8 272在MIPS上的编译修改记录
- 如何看懂财务报表:(一)如何下载财报
- ArcGIS晕渲图的制作(解决山体阴影问题——平坦地区凸点过于突出)
- 一读就错的68个姓氏,第一个就读错了
- html5 元宵节送祝福,[元宵节祝福语简短5]元宵节祝福语简短
- python实现打印九九乘法表
- 常见字读音(粤语)---(3)
- 苹果旧版app_曾经被吹爆的苹果,这次彻底跌下神坛
- Facebook使用虚拟信用卡养广告账户扣费跑广告实用技巧
- arm_neon.h文件ABI说明
- [转载]你有英文名字吗?给自己起一个吧
- 微信小程序-选择时间(一周的某一时刻)