unshare()
和 copy()
都用于复制数组,但我看不出区别。
最佳答案
取消分享
正如它在 Apple documentation 上所说,unshare
是 确保数组的副本是唯一的 ,因此当您调用 unshare
时,您将获得数组的非共享副本,如果这是对数组的唯一引用,则它可能是同一个数组。
复制
另一方面,copy
强制复制数组,并向返回一个新数组,其中包含复制的项目。
因此,如果您想拥有数组的 2 个独立副本,则应在其他情况下使用 copy
,您可以使用 unsare
来确保数组没有其他引用。