mysql 的情况下 sql 也可以啊
select id, cur_val + lag(acc_val, 1, 0) over (order by id) as sum_val from test order by id desc;
java8 的话也行
```java
MyObj obj1 = new MyObj(10, 7.66, 928.09, 0.0);
MyObj obj2 = new MyObj(9, 6.56, 920.43, 0.0);
MyObj obj3 = new MyObj(8, 4.79, 913.87, 0.0);
MyObj obj4 = new MyObj(7, 6.23, 909.08, 0.0);
List<MyObj> list = Lists.newArrayList(obj4, obj3, obj2, obj1);
MyObj res =
list.stream().reduce(new MyObj(0, 0.0, 0.0, 0.0), (prev, curr) -> {
curr.setSumVal(prev.getAccVal() + curr.getCurVal());
return curr;
}, (a, b) -> a);
list.forEach(System.out::println);
```