尝试为列表创建累加器,例如
public List<Double> accumulator(List<Double> originalList){
List result = new ArrayList<>();
Iterator<Double> iterator = originalList.iterator();
double sum = 0;
while(iterator.hasNext()){
sum = iterator.next() + sum;
result.add(sum);
}
return result;
}
我试图将其转换为使用Streams API, 我能想到的唯一方法是从做一些分区开始 而不是结果总和。
输入[20,15,25]
分区:
[20] = 20
[20,15] = 35
[20,15,25] = 60
最终结果: [20,35,60]
任何见解?