lambda表达式一般不能修改外部变量,可以通过把变量加入集合或则封装实体中,来修改内部元素的方式来修改对应的变量数据:
如:
public static void main(String[] args) {
System.out.println("sss");
List<String> list = Arrays.asList("0.1", "1.22", "22", "321");
List<BigDecimal> bigDecimal = new ArrayList<>();
list.forEach(u->{
if (CollectionUtils.isEmpty(bigDecimal)) {
bigDecimal.add(new BigDecimal(u));
} else {
bigDecimal.set(0, bigDecimal.get(0).add(new BigDecimal(u)));
}
});
System.out.println(bigDecimal.toString());
}