我有一个NSDictionary,其布局如下:
{
1:{
... some data ...
}
...
}
我有一个整数值为1的NSNumber对象,但是当我这样做时
[my_dict objectForKey:my_number]
它返回null。
如果我尝试通过[my dict objectForKey:[my_number intValue]]
将NSNumber转换为整数,我会收到警告,当程序到达代码的那一部分时程序会崩溃。
非常感谢任何帮助。
答案 0 :(得分:6)
NSDictionary
或NSMutableDictionary
中的键必须是对象,例如NSNumber
。它们不能是原始数据类型,如int
。
答案 1 :(得分:3)
您似乎正在尝试使用整数作为NSDictionary
中的密钥。使用NSArray
时这是正确的,NSDictionary
实际上需要一个合适的对象作为键。
在这种特殊情况下,您可能会获得更多成功,将这些数据提供给NSArray
,然后通过以下方式访问它:
id *someData = [my_array objectAtIndex:1];