NSMutableDictionary从不同的数组中删除相同的值

时间:2015-04-06 07:19:21

标签: ios objective-c nsmutablearray nsmutabledictionary

您好我正在使用以下代码从NSMutableDictionary中删除对象,两个字典都包含相同的数组值,如果我从D1中删除一个值,则自动从D2中删除相同的值。 帮助我解决这个问题,

NSMutableDictionary *D1=[[NSMutableDictionary alloc]init];
NSMutableDictionary *D2=[[NSMutableDictionary alloc]init];

NSMutableArray *arr_objs = [[NSMutableArray alloc]initWithObjects:@"ss",@"nn", nil];

[D1 setObject:arr_objs forKey:@"Keys"];
[D2 setObject:arr_objs forKey:@"Keys"];

[[D1 objectForKey:@"Keys"]removeObject:@"nn"];

1 个答案:

答案 0 :(得分:1)

arr_objs是两个词典中的相同数组。此

NSMutableArray *arr_objs = [[NSMutableArray alloc]initWithObjects:@"ss",@"nn", nil];
NSMutableArray *arr_objsCopy = [arr_objs mutableCopy];

[D1 setObject:arr_objs forKey:@"Keys"];
[D2 setObject:arr_objsCopy forKey:@"Keys"];

应该为您提供您正在寻找的东西。这个示例不是将相同的数组存储在两个字典中,而是创建两个相同的数组,以后可以修改它们而不会相互影响。