NSMutableDictionary文字

时间:2015-04-13 23:36:32

标签: ios nsdictionary nsmutabledictionary

CLBeaconRegion *region;
NSMutableDictionary *beacons;
....

beacons[region] = beacons;

以上代码将beacons设置为region的值是beacons的值吗?我认为密钥必须是string中的NSDictionary/NSMutableDictionary

2 个答案:

答案 0 :(得分:3)

当你说:

beacons[region] = beacons;

这与:

相同
[beacons setObject:beacons forKey:region];

第一个是第二个语法快捷方式。无论哪种方式,它可能不是你想要的,因为它通常通常有意义设置指向字典本身的字典键/值对。你究竟想做什么?

字典中的键不必是字符串,但它必须符合NSCopying protocol,请参阅definition

- (void)setObject:(id)anObject
           forKey:(id<NSCopying>)aKey

答案 1 :(得分:0)

beacons[region] = beacons;似乎不正确,因为您要在密钥beacons下将region字典添加到自身。

请注意,使用键值编码时,键必须是字符串,请参阅Key-Value Coding Fundamentals