由值创建流
静态方法Stream.of
Stream<String> stream = Stream.of("JAVA 8","Lambdas","In","Action");
由数组创建流
静态方法Arrays.stream
int[] numbers = {3,4,5,6,11,13};
int sum = Arrays.stream(numbers).sum();
由文件生成流
java.nio.file.Files中很多静态方法会返回一个流。例如Files.lines,返回文件各行构成的字符串流。
Stream<String> lines = Files.lines(Paths.get("data.txt"),Charset.defaultCharset())
由函数生成流
- 迭代
Stream.iterate
Stream.iterate(0,n->n+2)
.limit(10)
.forEach(System.out::println);
- 生成
Stream.genarate
Stream.generate(Math::random)
.limit(10)
.forEach(System.out::println);