Ios 从NSD字典快速读取数据
我正在使用此代码从Ios 从NSD字典快速读取数据,ios,iphone,json,swift,nsdictionary,Ios,Iphone,Json,Swift,Nsdictionary,我正在使用此代码从NSDictionary读取数据: let itemsArray: NSArray = response.objectForKey("items") as! NSArray; let nextPageToken: String = response.objectForKey("nextPageToken") as! String var videoIdArray: [String] = [] for (item) in itemsArray { let vide
NSDictionary
读取数据:
let itemsArray: NSArray = response.objectForKey("items") as! NSArray;
let nextPageToken: String = response.objectForKey("nextPageToken") as! String
var videoIdArray: [String] = []
for (item) in itemsArray {
let videoId: String? = item.valueForKey("id")!.valueForKey("videoId") as? String
videoIdArray.append(videoId!)
}
但是当我项
或下一个getoken
不存在时,我得到以下错误:
fatal error: unexpectedly found nil while unwrapping an Optional value
知道为什么吗?如何修复它?您的代码中有两个问题:
valueForKey:
而不是objectForKey:
从字典中检索数据。用于从字典中获取数据let itemsArray: NSArray? = response.objectForKey("items") as? NSArray;
let nextPageToken: String? = response.objectForKey("nextPageToken") as? String
var videoIdArray: [String] = []
if let itemsArray = itemsArray
{
for (item) in itemsArray
{
let videoId: String? = item.objectForKey("id")?.objectForKey("videoId") as? String
if (videoId != nil)
{
videoIdArray.append(videoId!)
}
}
}
去除(分号)在第一行@MTA
NSDictionary objectForKey:
如果密钥不存在,则返回nil
。我很确定键是区分大小写的。可能是Hi的重复,我使用相同的代码从NSDictionary检索对象值,但它显示了一个错误。swift 3中是否有任何新的更新?