加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

iphone – 如何复制一个NSMutableArray

发布时间:2020-12-15 02:03:15 所属栏目:百科 来源:网络整理
导读:我只想知道如何复制一个NSMutableArray,以便当我更改数组时,我对它的引用不会改变。如何复制数组? 解决方法 有多种方法可以这样做: NSArray *newArray = [NSMutableArray arrayWithArray:oldArray];NSArray *newArray = [[[NSMutableArray alloc] initWi
我只想知道如何复制一个NSMutableArray,以便当我更改数组时,我对它的引用不会改变。如何复制数组?

解决方法

有多种方法可以这样做:

NSArray *newArray = [NSMutableArray arrayWithArray:oldArray];

NSArray *newArray = [[[NSMutableArray alloc] initWithArray:oldArray] autorelease];

NSArray *newArray = [[oldArray mutableCopy] autorelease];

这些都会创造浅的副本。

(编辑:如果您正在使用ARC,只需将呼叫删除为autorelease。)

对于深层拷贝,请改用:

NSMutableArray *newArray = [[[NSMutableArray alloc] initWithArray:oldArray copyItems:YES] autorelease];

值得注意的是:由于明显的原因,后者将要求所有数组的元素对象来实现NSCopying。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读