从 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];

这将解决问题。