public static void main(String[] args) {
int[] numn = { 3, 4, 5, 6, 7, 8, 9 };
// 外部迭代
int sum = 0;
for (int i : numn) {
sum += i;
}
System.out.println("结果为:" + sum);
//内部操作
//.of 相当于new
int sumA = IntStream.of(numn).sum();
System.out.println("结果为:"+ sumA);
//惰性求值.map方法 是个一元函数:一元操作:接收T对象,返回T对象
//map是中间操作,sum是终止操作
int sumB = IntStream.of(numn).map(i-> i*2).sum();
System.out.println("结果为:"+ sumB);
int sumC = IntStream.of(numn).map(
i ->{
for(int j=0; j <= 10; j++) {
i = i+j;
}
return i;
}
).sum();
System.out.println("结果为:"+ sumC);
//方法引用
int sumD = IntStream.of(numn).map(
StreamTest1::getNewNumber
).sum();
System.out.println("结果为:"+ sumD);
//没有终止操作的情况下 不会执行中间操作
IntStream.of(numn).map(
StreamTest1::getNewNumber
);
}
public static int getNewNumber(int i) {
System.out.println("输出 i :" + i);
for(int j=0; j <= 10; j++) {
i = i+j;
}
return i;
}
Stream流式操作(附源码)
最新推荐文章于 2023-01-04 11:35:38 发布