package com.expgiga.Java8;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Stream;
/**
* Java8 Stream
*
* 一、Stream的三个操作步骤:
* 1. 创建Stream
* 2. 中间操作
* 3. 终止操作(终端操作)
*
*/
public class TestStream {
public static void main(String[] args) {
/*
* 1.创建Stream: 四种方式
*/
//1.1可以通过Collection 系列的集合提供的stream()或 parallelStream()
List<String> list =
new ArrayList<>();
Stream<String> stream1 = list.stream();
//1.2通过Arrays中的静态方法stream()获取数组流
Employee[] emps =
new Employee[
10];
Stream<Employee> stream2 = Arrays.
stream(emps);
//1.3通过Stream类中的静态方法of()
Stream<String> stream3 = Stream.
of(
"aa",
"bb",
"cc");
//1.4创建无限流
//迭代
Stream<Integer> stream4 = Stream.
iterate(
0, (x) -> x +
2);
stream4.limit(
10).forEach(System.
out::println);
//生成
Stream.
generate(() -> (
int)(Math.
random()))
.limit(
5)
.forEach(System.
out::println);
}
}