package jTest; import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.IntStream; public class StreamTest { public static void main(String[] args) { // 创建二维数组 List> list1 = Arrays.asList( Arrays.asList("a", "b", "c"), Arrays.asList("a", "b", "c") ); // 二维数组平整化 List list = list1.stream().flatMap(List::stream).toList(); System.out.println(list);// [a, b, c, a, b, c] // peek可以用来调试也可以塞对象,不改变流,如果你这个里面有对象,比如xxx.setXXX() 那么也会修改这个对象 List list2 = list.stream().filter(s -> s.startsWith("a")) .peek(System.out::println) .map(String::toUpperCase).toList(); System.out.println(list2);// [A, A] // 求和 int sum = IntStream.of(1, 2, 3, 4, 5, 6, 7, 8, 9, 10).sum(); System.out.println(sum); // Map集合 Map counts = new HashMap<>(); counts.put("apple", 1); counts.put("banana", 1); System.out.println(counts); counts.compute("apple", (key, val) -> val == null ? 1 : val + 1); System.out.println(counts); } }