package com.learn.demo03.Stream;import java.util.ArrayList;
import java.util.stream.Stream;/*练习:集合元素处理(Stream方式)将上一题当中的传统for循环写法更换为Stream流式处理方式。两个集合的初始内容不变,Person类的定义也不变。*/
public class Demo02StreamTest {public static void main(String[] args) {//第一支队伍ArrayList<String> one = new ArrayList<>();one.add("迪丽热巴");one.add("宋远桥");one.add("苏星河");one.add("石破天");one.add("石中玉");one.add("老子");one.add("庄子");one.add("洪七公");//1. 第一个队伍只要名字为3个字的成员姓名;存储到一个新集合中。//2. 第一个队伍筛选之后只要前3个人;存储到一个新集合中。Stream<String> oneStream = one.stream().filter(name -> name.length() == 3).limit(3);//第二支队伍ArrayList<String> two = new ArrayList<>();two.add("古力娜扎");two.add("张无忌");two.add("赵丽颖");two.add("张三丰");two.add("尼古拉斯赵四");two.add("张天爱");two.add("张二狗");//3. 第二个队伍只要姓张的成员姓名;存储到一个新集合中。//4. 第二个队伍筛选之后不要前2个人;存储到一个新集合中。Stream<String> twoStream = two.stream().filter(name -> name.startsWith("张")).skip(2);//5. 将两个队伍合并为一个队伍;存储到一个新集合中。//6. 根据姓名创建Person对象;存储到一个新集合中。//7. 打印整个队伍的Person对象信息。Stream.concat(oneStream,twoStream).map(name->new Person(name)).forEach(p-> System.out.println(p));}
}
package com.learn.demo03.Stream;public class Person {private String name;public Person() {}public Person(String name) {this.name = name;}@Overridepublic String toString() {return "Person{" +"name='" + name + '\'' +'}';}public String getName() {return name;}public void setName(String name) {this.name = name;}
}

集合元素处理(Stream方式)相关推荐

  1. 集合元素处理(传统方式),Stream流方式处理

    黑马程序员 集合元素处理(传统方式) Stream流方式处理 package Stream_Demo;import java.util.ArrayList; import java.util.stre ...

  2. 集合元素处理(传统方式)

    package com.learn.demo03.Stream;import java.util.ArrayList;/*练习:集合元素处理(传统方式)现在有两个ArrayList集合存储队伍当中的多 ...

  3. java集合多个最大值_Java 8 Stream 求集合元素每个属性的最大值

    Java 8 Stream 求集合元素每个属性的最大值,赋值给新对象 public class Mqtt { private int temperature; private int humidity ...

  4. Stream 校验两个集合元素是否完全一致

    import java.util.Arrays; import java.util.List; import java.util.stream.Collectors;/*** 校验两个集合元素是否完全 ...

  5. MapStruct系列(6)-映射集合、映射Stream流、映射枚举

    文章目录 映射集合 1. List. Set集合 2. Map集合 3. 集合映射策略 4. 用于集合映射的实现类型 映射Stream流 映射枚举 1. 将枚举映射到枚举类型 2. 映射枚举到字符串或 ...

  6. java中list元素排序_java list集合元素根据某些字段排序

    一.jdk1.6的环境下 新建ComparatorSort类,并实现Comparator接口,重写compare方法 降序排序:o1的元素>o2的元素,并返回-1:o1的元素小于o2的元素,并返 ...

  7. JavaSE基础笔记——不可变集合简介、Stream流体系、异常处理

    1.不可变集合简介 不可变集合,就是不可被修改的集合. 集合的数据项在创建的时候提供,并且在整个生命周期中都不可改变.否则报错. 为什么要创建不可变集合? 如果某个数据不能被修改,把它防御性地拷贝到不 ...

  8. mybatis mysql cursor_MySQL JDBC/MyBatis Stream方式读取SELECT超大结果集

    情景: 遍历并处理一个大表中的所有数据, 这个表中的数据可能会是千万条或者上亿条, 很多人可能会说用分页limit--但需求本身一次性遍历更加方便, 且Oracle/DB2都有方便的游标机制. 对DB ...

  9. Java学习之容器上(Collection接口常用方法,Iterator接口,使用foreach循环遍历Collection集合元素,Set集合通用知识(Hashset类,hashcode()与Lin

    1.容器API的类图结构如下: JAVA的集合类是一种特别有用的工具类,它可以用于存储数量不等的多个对象,并可以实现常用数据结构,如栈,队列等,除此之外,JAVA集合还可用于保存具有映射关系的关联数组 ...

最新文章

  1. 日常安排php,PHP日常开发小技巧
  2. python 监控windows磁盘空间和备份大小
  3. MPB:北大口腔陈峰、陈智滨等-口腔常见微生物的培养方法
  4. Qt Creator配置编辑器
  5. 久等了,「阿里妈妈技术」来啦!
  6. 快速锁屏电脑快捷键_一学就会的8个电脑快捷键一定要掌握!堪称“高效”神器...
  7. PHP内核通用网站后台权限管理系统源码
  8. django集成原有数据库
  9. Centos7 升级稳定版 openssl
  10. 深入了解 HTML 5
  11. 计算机热启动方法,关于电脑热启动的介绍
  12. mysql的insert_MySQL中INSERT的一般用法
  13. RocketMQ实战2
  14. 运维,数据库 知识点文章集锦
  15. [AS日记]MacOS的Android Studio卡在Building Gradle Project info走不动 的处理方法
  16. 颜色模型HSB-这么强大的工具,你居然还不知道?
  17. OpenCvSharp 给黑白图像添加自定义的伪彩色
  18. vue中使用微信jssdk语音聊天功能,实现语音输入内容的van-field输入框组件
  19. 来自java资深程序员的学习书单分享,收藏走一波
  20. VC++ RLE压缩算法(附源码)

热门文章

  1. HashSet中是如何判断元素是否重复的
  2. 原创:谈谈12306铁路客运售票系统的架构问题(二)
  3. 013:ADS semihosting与硬件重定向(转)
  4. JSON 之 SuperObject(2): 构建方式与 AsJSon
  5. 从NBear到ADO.NET Entity Framework让我迷惑了
  6. XorPay.com 支付平台介绍【支持个人申请】
  7. 阿里云安全送您六道平安符,恭贺新春!
  8. spring容器的设值注入和构造注入
  9. 2018-03-26
  10. 我在美国与“狼”共舞的日子(7)