从 NSMutableArray 中删除对象时 NSDictionary 发生变化?
NSDictionary getting changed when removing a object from NSMutableArray?
我有一个字典和数组,我从数组中删除一个对象意味着它也反映在字典中
下面是我的代码,
NSMutableArray * planDetailArr;
NSDictionary *singleItemDict;
- (void)viewDidLoad {
[super viewDidLoad];
planDetailArr=[[NSMutableArray alloc]init];
singleItemDict=[[NSDictionary alloc]init];}
//Parsing the JSON Response
-(void)responseFun:(NSMutableDictionary *)response
{
singleItemDict=response;
planDetailArr=response[@"planDetails_array"];
//Removing two values from array
[planDetailArr removeLastObject];
[planDetailArr removeObjectAtIndex:0];
}
在上面的代码中我删除了数组中的值only.when我在删除它在字典中反映的值后打印数组和字典也请帮助我..
注意:除了我打印响应外,它也被删除了。
您需要获取字典副本。由于它们指向同一个对象,实际对象的值发生了变化。
singleItemDict=[response copy];
planDetailArr=[response[@"planDetails_array"] mutableCopy];
这将解决问题。
我有一个字典和数组,我从数组中删除一个对象意味着它也反映在字典中 下面是我的代码,
NSMutableArray * planDetailArr;
NSDictionary *singleItemDict;
- (void)viewDidLoad {
[super viewDidLoad];
planDetailArr=[[NSMutableArray alloc]init];
singleItemDict=[[NSDictionary alloc]init];}
//Parsing the JSON Response
-(void)responseFun:(NSMutableDictionary *)response
{
singleItemDict=response;
planDetailArr=response[@"planDetails_array"];
//Removing two values from array
[planDetailArr removeLastObject];
[planDetailArr removeObjectAtIndex:0];
}
在上面的代码中我删除了数组中的值only.when我在删除它在字典中反映的值后打印数组和字典也请帮助我..
注意:除了我打印响应外,它也被删除了。
您需要获取字典副本。由于它们指向同一个对象,实际对象的值发生了变化。
singleItemDict=[response copy];
planDetailArr=[response[@"planDetails_array"] mutableCopy];
这将解决问题。