【发布时间】:2017-08-01 20:33:25
【问题描述】:
我有一个如下所示的 NSArray
[{
"Id":"456",
"Type":"Dog",
"Sound":"Bark",
},
{
"Id":"789",
"Type":"Cat",
"Sound":"Meow",
}]
我尝试了以下
for (id key in array) { // Doesn't work
NSLog(@"%@", key[@"Type"]);
}
我试过了
NSLog(@"%@", [array firstObject]); // Doesn't work
但这不起作用,因为没有可访问的 ID。我得到了两个NSInvalidArgumentException。我如何成功地遍历我拥有的两个对象并打印出类型?
【问题讨论】:
-
看起来你的数组变量不是 NSArray 子类。添加断点并检查它。
-
是的,您的代码看起来不错。数组是如何设置的?你怎么知道内容是什么?发布该代码,您将更有可能获得有用的答案。
-
如果
[array firstObject]为您提供NSInvalidArgumentException,则array不是NSArray。阅读错误消息,看看它到底是什么。 -
输入真实代码。看来您不知道向我们隐瞒太多信息。您需要显示真实代码、获取数据的方式,还需要显示
NSInvalidArgumentException的真实完整错误消息。它有很多调试信息,但你对我们隐藏了它们。
标签: ios objective-c arrays nsarray