如何检查字典中是否存在键?我的字典是[Type:Type?]类型。
我不能简单地检查字典[key] == nil,因为值可能是nil。
有任何想法吗?
其实你的测试字典[key] == nil可以用来检查
如果字典中存在密钥。如果值不会产生真实的
设置为nil:
如果字典中存在密钥。如果值不会产生真实的
设置为nil:
let dict : [String : Int?] = ["a" : 1,"b" : nil] dict["a"] == nil // false,dict["a"] is .Some(.Some(1)) dict["b"] == nil // false !!,dict["b"] is .Some(.None) dict["c"] == nil // true,dict["c"] is .None
要区分“关键不存在于dict”和“key for nil”你
可以做一个嵌套的可选分配:
if let val = dict["key"] { if let x = val { println(x) } else { println("value is nil") } } else { println("key is not present in dict") }