最近在学习Java8的新特性,在学习到Stream API时,知道使用Stream需要三个操作步骤:创建Stream、中间操作以及终止操作。今天记录一下创建Stream的几种方式:
1. 通过Collection系列集合的stream方法:
List<String> list = new ArrayList<>(); list.add("1"); list.add("2"); list.add("3"); list.stream().forEach(System.out::println);
2. 通过Arrays.stream方法:
String[] array = {"aa", "bb", "cc"}; Arrays.stream(array) .forEach(System.out::println);
3. 通过Stream的of方法:
Stream.of(1, 2, 3, 4, 5) .forEach(System.out::println);
4. 创建无限流
//4.1 迭代方式 Stream.iterate(0, x -> x + 2) .limit(10) //limit就是中间操作 .forEach(System.out::println);
//4.2 生成方式 Stream.generate(() -> Math.random()) .limit(10) .forEach(System.out::println);
//因为stream操作是延迟的,这就意味着它们会等到需要结果的时候才执行,以上的forEach实际上就是终止操作,只有有终止操作,流的相关操作才会执行。
以上相关内容参考尚硅谷Java8新特性教学视频