JAVA Stream流的使用
package Streams; import java.util.ArrayList; /** * 需求,按照下面的要求完成集合的创建和遍历 * 创建一个集合存储多个字符串元素 * 把集合中所有以张开头的元素存储到一个新的集合 * 把:张 开头的集合中长度为3⃣️的元素存储到一个新的集合 * 遍历上一步得到的集合 */ public class StreamDemo1 { public static void main(String[] args) { ArrayList<String> list = new ArrayList<String>(); list.add("张三啊"); list.add("李四啊"); list.add("王五噶"); list.add("张晓肖"); list.add("张a"); list.add("王先生"); ArrayList<String> zhangList = new ArrayList<String>(); for (String s:list){ if (s.startsWith("张")){ zhangList.add(s); } } //把:张 开头的集合中长度为3⃣️的元素存储到一个新的集合 ArrayList<String> threeList = new ArrayList<String>(); for (String s:zhangList){ if (s.length()==3){ threeList.add(s); } } for (String s:threeList){ System.out.println(s); } System.out.println("========"); //采用Stream流改写 list.stream().filter(s ->s.startsWith("张")).filter(s -> s.length()==3).forEach(s -> System.out.println(s)); System.out.println("========"); list.stream().filter(s ->s.startsWith("张")).filter(s -> s.length()==3).forEach(System.out::println); //Stream流是真正的函数式编程风格引入到JAVA中 } }