Java中的传值和传引用
三年以前读研究生的时候,就因为传值和传引用的问题给自己挖过一个坑
情景是,我将matlab代码翻译到java中
最后计算的结果偏差超过了限差的范围,也超过了java中数据截断误差的范围。
经过最后的排查发现,在计算的过程中,一个不应该改变的值被我以引用的形式传入了方法中,方法内部对值进行了更改最后导致了计算结果不正确
今天又碰到了跟传引用相关的问题
数据是通过Intent传入下一个Activity中的
计算结束后,数据通过Intent回传回来,这期间数据经过了序列化与反序列化,做到了很好的隔离
问题是,要赋值的时候,把外部的fragment中的对象的引用地址改了,而不是改变了原来的引用的内容,导致外部Activity中的值没变化