我有一个简单的UITableView(有1个部分),我的数据源是一个NSMutableDictionary的NSMutableArray。我试图更改字典中某个键的值,但得到的是“发送到不可变对象的可变方法”。
[[mutableArray objectAtIndex:0] setValue:@"hello" forKey:@"test"];
正如我所说,数组和字典都是可变的,并且都是分配的。
我怀疑可变字典不是真正的可变和/或字典。请注意,下面只有dict是可变的:
NSMutableDictionary *mutableDictionary = [NSMutableDictionary dictionaryWithCapacity:10]; NSArray *array = [NSArray arrayWithObject:mutableDictionary]; [[array objectAtIndex:0] setValue:@"hello" forKey:@"test"]; NSLog(@"array: %@", array);
生产:
2009-09-21 07:54:44.639 test[4262:a0f] array: ( { test = hello; } )