流(Stream)
定义
是数据渠道,用于操作数据源(集合、数组等)所生成的元素序列。
(集合讲的是数据,流讲的是计算!)
注意:
①Stream 自己不会存储元素。
②Stream 不会改变源对象。相反,会返回一个持有结果的新Stream。
③Stream 操作是延迟执行的。它会等到需要结果的时候才执行

Stream 操作三步:
- 创建 Stream
一个数据源(如:集合、数组),获取一个流 - 中间操作
一个中间操作链,对数据源的数据进行处理 - 终止操作(终端操作)
一个终止操作,执行中间操作链,并产生结果

//创建 Stream
@Test
public void test1(){
//1.可以通过 Collection 系列集合提供的 stream() 或 paralleStream()
List<String> list = new ArrayList<>();
Stream<String> stream1 = list.stream();
//2.通过 Arrays 中的静态方法 stream() 获取数组流
Employee[] emps = new Employee[10];
Stream<Employee> stream2 = Arrays.stream(emps);
//3.通过 Stream 类中的静态方法 of()
Stream<String> stream3 = Stream.of("aa", "bb", "cc");
//4.创建无限流
//迭代
Stream<Integer> stream4 = Stream.iterate(0, x -> x + 2);
stream4.limit(10).forEach(System.out::println);
//生成
Stream<Double> stream5 = Stream.generate(() -> Math.random());
stream5.limit(10).forEach(System.out::println);
}

本文深入讲解Java中的Stream API,探讨其定义、特性及操作流程,包括创建Stream的方式、中间操作和终止操作,以及如何通过实例演示创建不同类型的Stream。
1759

被折叠的 条评论
为什么被折叠?



