在Swift中将对象设置为清空NSDictionary

时间:2014-06-29 16:14:47

标签: ios nsdictionary swift xcode6

我可以创建一个NSDictionary

    var namesDictionary=Dictionary<String,String>()
    namesDictionary["Jacob"] = "Marry"

但是,当我创建一个像下面编码的空字典时,第1行我可以,但第2行(添加值)会引发错误。

    var namesDictionary =[:]
    namesDictionary["Jacob"] = "Marry"

错误是“无法分配给此表达式的结果”。有没有其他方法来分配值。

1 个答案:

答案 0 :(得分:13)

看起来快速解释字典类型是一个问题。尝试明确键入空字典。

var namesDictionary: Dictionary<String, String> = [:]
namesDictionary["Jacob"] = "Marry"

我认为[:]更好用于清空已定义的字典。如果你添加第三行namesDictionary = [:],你将能够再次调用namesDictionary["Jacob"] = "Marry",因为编译器知道它来自初始声明的字典类型。