我有这个JsonResponse:
...id = 7;
levels = (
{
name = "name";
"unique_id" = 23223;
},
{
name = "name";
"unique_id" = d32432;
},
{
name = "name";
"unique_id" = 324;
},
{
name = "name";
"unique_id" = 234;
}
);
我使用它来获得结果作为字典:
var jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as! NSDictionary
我的问题是我如何解析水平数组 - 迭代对象并获得数组大小
答案 0 :(得分:0)
基本上你只需循环它们:
if(jsonResult)
{
let levels = jsonResult! as NSDictionary;
for item in levels {
let obj = item as NSDictionary
let name = obj["name"] as NSString;
let uniqueId = obj["unique_id"] as NSNumber;
}
}
答案 1 :(得分:0)
我建议在使用JSON时尽可能多地使用类型安全。这是一个(未经测试的)示例,向您展示如何安全地转换数据:
if let levels = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as? [[String: AnyObject]] {
for elem in levels {
let name = elem["name"] as? NSString
let uniqueId = elem["unique_id"] as? NSNumber
}
}