1.不可變?nèi)萜?/p>
NSArray *array = [NSArray array];
NSLog(@"拷貝前:%p\n拷貝后:%p",array,[array copy]);
2017-12-25 14:06:08.061639+0800 RAC_MVVM[97090:6343605] 拷貝前:0x60000000ac40
拷貝后:0x60000000ac40
NSArray *array = [NSArray array];
NSLog(@"拷貝前:%p\n拷貝后:%p",array,[array mutableCopy]);
2017-12-25 14:09:06.045388+0800 RAC_MVVM[97309:6348491] 拷貝前:0x600000007a30 拷貝后:0x60400025b000
不可變?nèi)萜鞯腸opy是淺拷貝乾吻,mutableCopy為深拷貝
2.可變?nèi)萜?/p>
NSMutableArray *mutableArray = [NSMutableArray array];
NSLog(@"拷貝前:%p\n拷貝后:%p",mutableArray,[mutableArray copy]);
2017-12-25 14:10:58.338086+0800 RAC_MVVM[97373:6350541] 拷貝前:0x600000440960
拷貝后:0x600000001ee0
NSMutableArray *mutableArray = [NSMutableArray array];
NSLog(@"拷貝前:%p\n拷貝后:%p",mutableArray,[mutableArray mutableCopy]);
2017-12-25 14:11:39.924935+0800 RAC_MVVM[97443:6351719] 拷貝前:0x604000249120
拷貝后:0x604000249030
可變?nèi)萜鞯腸opy和mutableCopy都是深拷貝纤勒。
總結(jié):執(zhí)行copy或者mutableCopy前后都是不可變?nèi)萜鞯氖菧\拷貝,否則是深拷貝泽铛。