我对swift很新,我正在努力了解如何处理nil vars ......
我有两个词典:
var currencyname: NSDictionary = [
"CNY": "Chinese Yuan",
"PLN": "Polish Zloty"
"EUR": "Euro"
]
var rawrates NSDictionary = [
"CNY": "1.34",
"PLN": "1.456"
]
我使用元组字典组合它们:
var combinedDictionary:[String:(name:String,rate:String)] = [:]
for key in currencyname.keys.array {
combinedDictionary[key] = (currencyname[key]!,rawrates[key]!)
}
但是我收到 found nil while unwrapping an Optional value
错误,因为 currencyname
字典中的键 EUR
与 rawrate
字典中的任何键都不匹配 .
我知道在使用 let if
组合它们之前,我必须以某种方式检查两个字典中是否存在密钥?但我对语法感到困惑......我也尝试使用可选值而没有成功 .
所以我的问题是如何组合这两个词典并省略 EUR
的combinedDictionary,因为 rawrate
字典中没有匹配的键?
谢谢您的帮助!
1 回答
我想你所追求的是这样的:
但如果没有更明确的问题陈述,有点难以确定 . 在任何情况下,这都不是我建议的 . 在我看来,这是一个更好的结果: