1、如何理解Stream
Java8新特性
Stream可以理解为管道,管道里的流水就是数据,管道里可以对水进行处理,如过滤,消毒,净化等等操作。最后流出的水才能喝。
所以我理解Stream关注的是对数据的加工计算。对比java集合框架,集合框架关注的是如何存取数据。
一个stream操作主要有3个部分:源头、中间操作、终止操作。
中间操作可以有0个或多个 但不是立马执行的,只有终止操作被调用后中间操作才会一起执行(惰性执行)
有了stream操作后 会简化我们的操作,如循环
如循环一个数组,打印,如下操作,而非原来的for循环,是否很简洁
int[] intArray = new int[]{2,4,6,1}; Arrays.stream(intArray).forEach(System.out::println);
2、Stream来源
stream来源:数组 集合 IO流
数组:
例如下:
int[] intArray = new int[]{2,4,6,1}; Arrays.stream(intArray).forEach(System.out::println); Stream.of(intArray).forEach(System.out::println);
集合Collection
IO流
3、中间操作
todo
4、终止操作
todo