2016-09-13 97 views
1

我有以下变量:如何将密钥及其值添加到字典中?

var params = [ 
    "long": lon, 
    "lat": lat, 
    "radius": radius, 
    "deleted": "false" 
] 

,我想一个新的对添加到它:

"username": "blablah" 

我该怎么办呢?

我试着用:

params.setValue("blablah", forKey: "username") 

但它扔错误:

...this class is not key value coding-compliant for the key username.' 
+0

创建一个可变的副本,然后添加到。原样是不变的。 – danh

+0

嗯,你能告诉我任何这样的例子吗?我不确定如何做到这一点... – user3766930

+0

'var mutableParams = params' – danh

回答

4

两个问题。首先,编译器没有足够的信息来确定字典类型,因此应该指定它。另外,使用下标符号来设置新值。见下:

var params: [String : Any] = [ 
    "long": lon, 
    "lat": lat, 
    "radius": radius, 
    "deleted": "false" 
] 

params["username"] = "blablah"