进阶day07-Stream流的概述

This commit is contained in:
2026-03-14 14:25:07 +08:00
parent 64e5edb203
commit e31a7271ff

View File

@@ -0,0 +1,48 @@
package com.inmind.stream03;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/*
学习内容传统操作集合和Stream流操作集合的对比
需求:
1. 首先筛选所有姓张的人;
2. 然后筛选名字有三个字的人;
3. 最后进行对结果进行打印输出。
*/
public class StreamDemo16 {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("张无忌");
list.add("周芷若");
list.add("赵敏");
list.add("张强");
list.add("张三丰");
//1. 首先筛选所有姓张的人;
ArrayList<String> list1 = new ArrayList<>();
for (String s : list) {
if (s.startsWith("")) {
list1.add(s);
}
}
//2. 然后筛选名字有三个字的人;
ArrayList<String> list2 = new ArrayList<>();
for (String s : list1) {
if (s.length() == 3) {
list2.add(s);
}
}
System.out.println(list2);
//-----------------------------------以下使用Stream流优化以上的代码 -----------------------------
List<String> list3 = list.stream()
.filter(s -> s.startsWith(""))
.filter(s -> s.length() == 3)
.collect(Collectors.toList());
System.out.println(list3);
}
}