stream_创建流
stream_创建流
流(stream)是什么?
是数据渠道,用于操作数据源(集合、数组等)所生成的元素序列。
(集合讲的是数据,流讲的是计算!)
注意:
- stream 自己不会存储元素
- stream 不会改变源对象。相反他会返回一个持有结果的新stream。
- stream 操作是延迟执行的。这意味着他们会等到需要结果的时候才执行。
stream操作的三个步骤
- 创建stream : 一个数据源(如:集合、数组),获取一个流
- 中间操作 :一个中间操作链,对数据源数据进行处理
- 终止操作(终端操作) :一个终止操作,执行中间操作链, 并产生结果
![]()
创建stream
/**
* 创建stream 的方式
*/
@Test
public void test1(){
// 1. 通过Collection 系列集合提供的stream() 或 parallelStream()
List<String> list = new ArrayList<>();
Stream<String> stream = list.stream();
// 2. 通过Arrays中的静态方法stream() 获取数组流
Object[] objects = new Object[10];
Stream<Object> stream1 = Arrays.stream(objects);
// 3. 通过Stream 类中的静态方法 of()
Stream<String> stream2 = Stream.of("aaa", "bbb", "ccc");
// 4. 创建无限流(迭代)
Stream<Integer> stream3 = Stream.iterate(0, (x) -> x + 2);
stream3.limit(10).forEach(System.out::println);
// 5. 创建无限流(生成)
Stream stream4 = Stream.generate(() -> Math.random());
stream4.forEach(System.out::println);
}

浙公网安备 33010602011771号