stream_创建流

stream_创建流

流(stream)是什么?
是数据渠道,用于操作数据源(集合、数组等)所生成的元素序列。
(集合讲的是数据,流讲的是计算!)

注意:

  1. stream 自己不会存储元素
  2. stream 不会改变源对象。相反他会返回一个持有结果的新stream。
  3. stream 操作是延迟执行的。这意味着他们会等到需要结果的时候才执行。

stream操作的三个步骤

  1. 创建stream : 一个数据源(如:集合、数组),获取一个流
  2. 中间操作 :一个中间操作链,对数据源数据进行处理
  3. 终止操作(终端操作) :一个终止操作,执行中间操作链, 并产生结果

创建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);
    }
posted on 2024-12-23 14:38  屋蓝  阅读(15)  评论(0)    收藏  举报