码迷,mamicode.com
首页 > 编程语言 > 详细

Java8 新特性 Stream() 创建流

时间:2019-12-06 13:48:43      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:parallel   方法   asList   次方   ring   limit   class   接收参数   串行   

通过Controllere类的Stream()和parallelStream()创建流

//通过集合创建流
    @Test
    public void test1() {
        String arr[] = new String[]{"a", "b", "c"};
        //把数组转换成集合
        List<String> list = Arrays.asList(arr);
        //生成stream流(串行流)
        Stream<String> stream = list.stream();
        //生成并行流
        Stream<String> stringStream = list.parallelStream();
    }

通过数组创建流

    @Test
    public void test2() {
        String arr[] = new String[]{"a", "b", "c"};
        //通过数据里面的stream()方法来创建的
        Stream<String> stream = Arrays.stream(arr);
        //通过Stream类的静态方法创建方法
        Stream<String> arr1 = Stream.of(arr);
    }

创建一个空的流

    @Test
    public void test3() {
        //创建一个空流
        Stream<Object> empty = Stream.empty();
    }

无限流

    @Test
    public void test4() {
        //生成一个全是G的无限流
        //参数是一个supplier函数式接口,不接收参数,只管生产
        //可以根据自己的要求来创建流
        Stream<String> generate = Stream.generate(() -> "G");
        System.out.println("生成5个全是G的流:");
        generate.limit(5).forEach(System.out::println);

        //生成一个
        //根据初始化生成的值,最后的一个输出的是2的9次方
        Stream<Integer> iterate = Stream.iterate(1, (x) -> x * 2);
        iterate.limit(10).forEach(System.out::println);
        /**
         * 1
         * 2
         * 4
         * 8
         * 16
         * 32
         * 64
         * 128
         * 256
         * 512
         */
    }



细节决定成败!

个人愚见,如有不对,恳请扶正!

Java8 新特性 Stream() 创建流

标签:parallel   方法   asList   次方   ring   limit   class   接收参数   串行   

原文地址:https://www.cnblogs.com/xdtg/p/11994642.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!