Java Stream流(详解) | 您所在的位置:网站首页 › spring图片流 › Java Stream流(详解) |
一、Stream流引入
Lambda表达式,基于Lambda所带来的函数式编程,又引入了一个全新的Stream概念,用于解决集合类库既有的鼻端。(Lambda表达式详解在上篇博客内容) 现有一个需求:将list集合中姓张的元素过滤到一个新的集合中 然后将过滤出来的姓张的元素中,再过滤出来长度为3的元素,存储到一个新的集合中 1.用常规方法解决需求 // 已知的知识来解决需求 List list1 = new ArrayList(); list1.add("张老三"); list1.add("张小三"); list1.add("李四"); list1.add("赵五"); list1.add("张六"); list1.add("王八"); ArrayList list2 = new ArrayList(); // 1.将list集合中姓张的元素过滤到一个新的集合中 for(String name : list1){ if(name.startsWith("张")){ list2.add(name); } } ArrayList list3 = new ArrayList(); for (String name : list2) { if (name.length() == 3){ list3.add(name); } } System.out.println(list3); 输出结果: [张老三, 张小三]2.用Stream流操作集合,获取流,过滤操作,打印输出 list1.stream().filter((String name)->name.startsWith("张")).filter((String name)->name.length()==3).forEach((String name)->{ System.out.println("符合条件的姓名:" + name); });( 看不懂没关系,下面会讲到该方法,这里只是用来引入的) 二、Stream流的格式 Stream filter(Predicate |
CopyRight 2018-2019 实验室设备网 版权所有 |