Stream流式操作_造流操作

Java8 中添加了一个新的接口类 Stream,相当于高级版的 Iterator,通过 Lambda 表达式对集合进行各种非常便利、高效的聚合操作(Aggregate Operation),或者大批量数据操作 (Bulk Data Operation)。Stream不仅可以通过串行的方式实现数据操作,还可以通过并行的方式处理大批量数据,提高数据的处理效率。

如何建流
1.集合转流
    @Test
    //集合转流
    public void test2(){
        ArrayList<String> list = new ArrayList<>();
        list.add("A");
        list.add("a");
        Stream<String> stream = list.stream();
        stream.filter((a)->{return a.contains("A");}).filter((u)->{return !(u.isEmpty());}).forEach(System.out::println);

    }
2.数组转流
    @Test
    //数组转流
    public void test3(){
        int[] arr = new int[]{1,2,3,4};
        IntStream stream = Arrays.stream(arr);
        stream.filter((u)->{return u%2 == 1;}).forEach(System.out::println);
    }
3.流的of方法造流
    @Test
    //流的of方法
    public void test4(){
        Stream<Integer> stream = Stream.of(1, 2, 3, 4);
        stream.filter((u)->{return u%2 == 0;}).forEach(System.out::println);
    }
4.造无限流和生成流
    @Test
    //无线流,生成流
    public void test5(){
        Stream.iterate(0,(t)->{return t+2;}).limit(10).forEach(System.out::println);
        Stream.generate(Math::random).limit(10).forEach(System.out::println);
    }

猜你喜欢

转载自blog.csdn.net/qq_43141726/article/details/114325668