list循环操作涉及到修改值时,会出现最后一条数据覆盖已有数据的问题,这是由于相同引用导致的,这时可以考虑使用对象复制(引用地址不同)解决。
BeanUtils.copyProperties(source,target);
for (BalanceReportVO dataVO : dataList) {
//解决list循环数据覆盖问题
BalanceReportVO tempVO = new BalanceReportVO();
BeanUtils.copyProperties(baseVO,tempVO);
tempVO.setDataTime(dataVO.getDataTime());
tempVO.setPreBalanceVal(dataVO.getPreBalanceVal());
allList.add(tempVO);
}