fuz*_*oat 3 dictionary casting nsmutabledictionary swift
任何人都可以帮助我解决这个问题的正确方法,我尝试了各种版本,但总是遇到错误或警告.下面的代码和输出来自Swift Playground.
var foundationDict = NSMutableDictionary()
foundationDict.setObject("Bilbo", forKey: "FirstName")
foundationDict.setObject("Baggins", forKey: "LastName")
var swiftDict = foundationDict as! Dictionary<String, String>
for (key, value) in swiftDict {
print("KEY: \(key) VALUE: |\(value)")
}
Run Code Online (Sandbox Code Playgroud)
OUTPUT:
KEY: FirstName VALUE: |Bilbo
KEY: LastName VALUE: |Baggins
Run Code Online (Sandbox Code Playgroud)
警告:
Cast from NSMutableDictionary to unrelated type Dictionary<String String> always fails
Run Code Online (Sandbox Code Playgroud)
我不确定为什么,但是这样用它来表达沉默警告:
var swiftDict = (foundationDict as NSDictionary) as! Dictionary<String, String>
Run Code Online (Sandbox Code Playgroud)
在这种情况下,类型系统似乎很难与NSMutableDictionary/NSDictionary相媲美.
| 归档时间: |
|
| 查看次数: |
5216 次 |
| 最近记录: |