在Swift中,我们可以比较可选值,也可以比较字典,但如何比较可选字典?
var dict: [String: String]? = [
"name" : "A name",
"email" : "an@email.com"
]
var dict2 = [
"name" : "A name",
"email" : "an@email.com"
]
if dict2 == dict { // Error line: Value of optional type '[String : String]?' not unwrapped; did you mean to use '!' or '?'?
}
这段代码无法编译,需要我们强制解包字典。是否有更好的解决方法?
dict2 == dict
是一个逻辑判断而不是值的赋值... 而dict
是一个未包装的可选项,而dict2
最初被包装了... 所以你实际上想在这里做什么? - holex