copy mutableCopy

研究下 除了对不可变的对象的不可变copy 是浅拷贝, 其余都是深拷贝

可变对象的 copy 和 mutableCopy

copy mutableCopy_第1张图片
Paste_Image.png

内存地址都不一样

不可变对象的copy 和 mutableCopy

copy mutableCopy_第2张图片
Paste_Image.png

不可变对象的不可变copy 内存地址是一样的.可以得出除了对不可变对象的不可变copy是浅拷贝其余都是深拷贝是正确的

补充几点:
(1)浅拷贝是拷贝对象指针,地址一样, 被copy对象销毁,copy对象无效
(2)深拷贝是拷贝指针内容,地址不同,被copy对象销毁,copy对象依旧存在
(3)集合对象的内容复制仅限于对象本身,对象元素仍然是指针复制,如下图所示

copy mutableCopy_第3张图片
Paste_Image.png

你可能感兴趣的:(copy mutableCopy)