1、Stream 的五种创建方式
1)通过数组创建
2)通过列表创建
3)通过 Stream.generate 方法创建
4)通过 Stream.iterate 方法创建
5)通过其他 API 创建
2、示例代码
代码如下:
package mirale.luna.lambda.stream;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Stream;
/**
* Created by Miracle Luna on 2020/12/23
*/
public class CreateStream {
public static void main(String[] args) {
System.out.println("==================方式1=================");
// 方式1:数组创建
Integer[] intArr = {
1,2,3,4,5,6};
Stream stream1 = Stream.of(intArr);
stream1.forEach(System.out::println);
System.out.println("\n==================方式2=================");
// 方式2:列表创建
List<String> strings = Arrays.asList("Java", "Go", "Python", "Vue");
Stream stream2 = strings.stream();
stream2.forEach(System.out::println);
System.out.println("\n==================方式3=================");
// 方式3:Stream.generate 创建
Stream stream3 = Stream.generate(()-> 1);
stream3.limit(3).forEach(System.out::println);
System.out.println("\n==================方式4=================");
// 方式4:Stream.iterate 创建
Stream stream4 = Stream.iterate(1, i -> i+1);
stream4.limit(4).forEach(System.out::println);
System.out.println("\n==================方式5=================");
// 方式5:其他API 创建
stream1 = Stream.of(intArr);
stream2 = strings.stream();
Stream stream5 = Stream.concat(stream1, stream2);
stream5.forEach(System.out::println);
}
}
运行结果如下:
==================方式1=================
1
2
3
4
5
6
==================方式2=================
Java
Go
Python
Vue
==================方式3=================
1
1
1
==================方式4=================
1
2
3
4
==================方式5=================
1
2
3
4
5
6
Java
Go
Python
Vue