Java常见对象引用错误

2020-12-22 17:54:55

今天在写财务系统某汇总功能的时候不小心犯了一个很基础的错误,导致汇总和明细的某金额字段核对出现一些误差。

以下是bug解决前后代码对比:


修改前:

红框内这样赋值集合元素的引用看似没啥问题,而且可以使代码更加简洁,但是后面对赋值后的对象dto进行操作可能会改变集合tmpList元素的属性值。

至今未想明白,这样为什么会对最终结果造成影响???

即使改变了集合tmpList元素的属性值,循环到下一次也换成其他元素(tmpList)了啊。。。

 

 

 

修改后:

这样写才是对的,就是代码不够简洁,对于有代码洁癖的我来说也是挺难受的!!!


 

按理说应该这两种情况得到的dataList是一样的,可实际结果为什么不一样呢?求大神指教。。。谢谢!!!

 

版权声明:本文为jin9yuan原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/jin9yuan/p/14174667.html