iOS中数组的的copy

一般对NSArray和NSMutableArray进行copy是深拷贝,产生新的array对象。其内部元素也是浅拷贝,数组元素没有产生新对象。
如果像想对数组进行深拷贝,可以这样,且MyObject必须实现Copy协议中的 -copyWithZone: 方法。

NSArray *array = @[MyObject.new];
    
NSLog(@"%@", array[0]);
NSLog(@"%@", [[NSArray alloc] initWithArray:array YES][0]);  

你可能感兴趣的:(iOS中数组的的copy)