iOS 模型数组拷贝以及model的NSCopying的runtime实现。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 模型数组拷贝以及model的NSCopying的runtime实现。相关的知识,希望对你有一定的参考价值。

参考技术A 主要目的是为了记录

NSArray * trueDeepCopyArray = [NSKeyedUnarchiver unarchiveObjectWithData: [NSKeyedArchiver archivedDataWithRootObject:@[dataModel]]];

所得的数组以及数组内的model都是深copy。

NSMutableArray * array = [NSMutableArray arrayWithArray:@[model,model1]];
NSArray *lastArray = [[NSArray alloc]initWithArray:array copyItems:YES];
所得的数组以及数组内的model都是深copy。

到此就实现了对model的直接copy,不管model里面是否含有包含其他model的数组。拷贝后,都能得到一个全新的model。

以上是关于iOS 模型数组拷贝以及model的NSCopying的runtime实现。的主要内容,如果未能解决你的问题,请参考以下文章

iOS--数组添加多个模型修改一个全都改变

C 语言二级指针内存模型 ( 指针数组 | 二维数组 | 自定义二级指针 | 将 一二 模型数据拷贝到 三 模型中 并 排序 )

iOS之深拷贝与浅拷贝

iOS Json转换模型库:YYModel

javascript 数组以及对象的深拷贝(复制数组或复制对象)的方法

iOS 自定义对象及子类及模型套模型的拷贝归档存储的通用代码