我正在尝试在循环内为我的 NSMutableDictionary 设置一些值,并每次将字典值分配给 NSMutableArray ,如下所示,
for(int i=0;i<=lastObj;i++){
[mutableDict setValue:[valuesArray objectAtIndex:i] forKey:@"Name"];
[mutableDict setValue:[uniqueArray objectAtIndex:i] forKey:@"SSN"];
//......then
**[mutableArray addObject:mutableDict];**/*not working perfectly all values s replaced by final mutableDict values (duplicate values)*/
但
**[mutableArray addObject:[mutableDict copy]];**/* Working Correctly !!! */
}
每次迭代中的循环内部都会将新值分配给 mutableDictionary 并且每当我说 addObject 我的 mutableArray 正在获取所有重复值但每当我说 addObject:[mutableDict copy ] 时,数组正在获取正确的唯一值而没有任何重复,我不知道当我说复制时编译器有什么不同,有人能告诉我这有什么不同吗?提前致谢。