【发布时间】:2017-10-29 19:53:13
【问题描述】:
我的项目中有以下代码。
for (key, value) in photoDic {
if let url = URL.init(string: value as! String){
let photo : PhotoRecord = PhotoRecord.init(name:key as! String, url:url)
self.photoRecords.append(photo)
}
}
我的问题是如何使 for 循环中的键和值成为可选的,或者检查它们中的任何一个是否为 nil? 我无法检查它们是否为 nil,收到警告说 any 不能为 nil,因为它是非可选的。
我正在考虑使用类似的东西 for(key:String?, value:String?){}
但它不起作用。
【问题讨论】:
-
你如何声明你的
photoDic? -
懒惰的 var photoDic: NSDictionary = NSDictionary.init(contentsOf:URL.init(string: "raywenderlich.com/downloads/ClassicPhotosDictionary.plist")!)!
-
keyof dictionary 永远不能为 nil,for in总是迭代非 nilvalues。
标签: swift dictionary iteration optional