我可以创建一个NSDictionary
var namesDictionary=Dictionary<String,String>()
namesDictionary["Jacob"] = "Marry"
但是,当我创建一个像下面编码的空字典时,第1行我可以,但第2行(添加值)会引发错误。
var namesDictionary =[:]
namesDictionary["Jacob"] = "Marry"
错误是“无法分配给此表达式的结果”。有没有其他方法来分配值。
答案 0 :(得分:13)
看起来快速解释字典类型是一个问题。尝试明确键入空字典。
var namesDictionary: Dictionary<String, String> = [:]
namesDictionary["Jacob"] = "Marry"
我认为[:]
更好用于清空已定义的字典。如果你添加第三行namesDictionary = [:]
,你将能够再次调用namesDictionary["Jacob"] = "Marry"
,因为编译器知道它来自初始声明的字典类型。