我想拥有一个数据结构,其中每个键都对应一个值(Int
),该值可以修改,就像可以向其中添加一些值一样。
NSMutableDictionary
可以工作吗?
如果是,那怎么办?
答案 0 :(得分:0)
是的,您可以使用NSMutableDictionary修改值。但对于该值,应为NSNumber。我认为这样对您来说就可以了。
答案 1 :(得分:0)
您不能存储可可类型(例如NSMutableDictionary)的基本类型,需要将它们桥接到其NS类型(即NSNumber等)
NSNumber *val1= [NSNumber numberWithInt:0];
NSNumber *val2= [NSNumber numberWithInt:1];
NSNumber *val3= [NSNumber numberWithInt:2];
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
dict["yourKey"] = val1;
dict["yourKey1"] = val2;
dict["yourKey2"] = val3;
答案 2 :(得分:0)
您可以这样做:
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
[dict setObject:[NSNumber numberWithInt:42] forKey:@"key1"];
int myNumber = [[dict objectForKey:@"key1"] intValue];
myNumber = myNumber + 10;
dict[@"key1"] = [NSNumber numberWithInt:myNumber];
NSLog(@"%@", dict);
给定代码的输出为:
{
key1 = 52;
}