我要做的是检查词典的深度。我的JSON有两种可能性:
stop-schedule:
0:
route:
1:
route:
或
stop-schedule:
route:
所以我正在检查是否需要更深入。
通常我会做一些像
这样的事情[dict objectForKey:@"0"]
检查密钥是否存在(如果没有则返回nill)但是由于某种原因我在iOS上测试时遇到错误。
[__NSCFArray objectForKey:]: unrecognized selector sent to instance
答案 0 :(得分:5)
现在仔细阅读错误消息。
你的dict
不是字典而是数组。它没有钥匙。如果你想确定它是某个类,请使用反射:
if ([json isKindOfClass:[NSDictionary class]]) {
// object
} else if ([json isKindOfClass:[NSArray class]]) {
// array
} else {
// fragment or `nil`
}