获取Stream的方式有以下几种 :
1. 集合 : 通过Collection系列集合提供的 stream() 或者 parallelStream()
-
Stream<E> stream() : 串行操作
-
Stream<E> parallelStream() : 并行操作
2. 数组 : 通过Arrays中的静态方法 stream(T[] array) 获取
-
static <T> Stream<T> stream(T[] array)
3. Stream类中的静态函数 of()
-
static <T> Stream<T> of(T .... value)
-
static <T> Stream<T> of(T t)
4. 创建无限流
-
迭代 : static <T> Stream<T> iterate(T seed , UnaryOperator<T> f)
-
Stream<Integer> stream3 = Stream.iterate(0, (x) -> x + 10); stream3.limit(10) .forEach(System.out::println);
-
-
生成 : static <T> Stream<T> generate(Supplier<T> s)
-
Stream<Double> stream4 = Stream.generate(() -> Math.random()); stream4.limit(10) .forEach(System.out::println);
-