package J20250724.demo02_function_program; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Set; import java.util.stream.Collectors; /** * @author WanJl * @version 1.0 * @title Demo04 * @description * @create 2025/7/24 */ public class Demo04 { public static void main(String[] args) { ArrayList list=new ArrayList<>(); for (int i = 0; i < 10; i++) { list.add(i); } list.add(5); list.add(10); list.add(3); list.add(10); System.out.println(list); //把元素大于5的元素添加到新的List集合中 List integerList = list.stream() .filter(n -> n > 5) .collect(Collectors.toList()); System.out.println(integerList); Set integerSet = list.stream().filter(n -> n > 5) .collect(Collectors.toSet()); System.out.println(integerSet); /* 创建一个ArrayList集合,添加以下字符串,字符串前面是姓名,后面是年龄,终结使用逗号分隔 张三,20 李四,35 王五,60 保留年龄大于20岁的人,并将结果收集到Map集合中,姓名是键,年龄是值。 */ ArrayList myList=new ArrayList<>(); myList.add("张三,20"); myList.add("李四,35"); myList.add("王五,60"); Map map = myList.stream().filter( s -> { String[] split = s.split(","); int age = Integer.parseInt(split[1]); return age > 20; //获取年龄大于20的 } ).collect(Collectors.toMap( s -> s.split(",")[0], //获取姓名 s -> Integer.parseInt(s.split(",")[1]) //获取年龄,转换为Integer类型 )); System.out.println(map); } }