Flutter学习之深浅拷贝

264 阅读1分钟

情况是这样开发中遇到一个问题。

image.png

代码中这样做的时候我发现,修改tempModel的idStr时候,_dataSource[0] 里面的数据也发生了变化。

查了之后了解到Flutter也有类似OC的引用类型一样,具有内存共享的特性。拷贝出来的是内存地址,而不是一个新对象。也就是浅拷贝。

浅拷贝

上图就是浅拷贝

深拷贝

新建一个对象把旧对象属性赋值过去。

image.png