NSMutableDictionary 从不同的数组中删除相同的值
NSMutableDictionary Removes same values from different array
您好,我正在使用以下代码从 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"];
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"];
应该能满足您的需求。此示例没有将同一个数组存储在两个字典中,而是创建了两个相同的数组,以后可以在不影响彼此的情况下对其进行修改。
您好,我正在使用以下代码从 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"];
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"];
应该能满足您的需求。此示例没有将同一个数组存储在两个字典中,而是创建了两个相同的数组,以后可以在不影响彼此的情况下对其进行修改。