SO like this上有几个帖子,唯一可行的解决方案是手动删除并在同一索引处插入属性。
但这感觉很麻烦,有些帖子暗示,如果在一个字典数组中,可以在Xcode 7中直接更新字典属性。
但是,它不适用于下面的代码,会产生Cannot assign to immutable expression of type [String:AnyObject]
错误。
// Class vars
var userDict = [String:AnyObject]()
var accounts = [[String:AnyObject]]()
func setHistory(index: Int, history: [String]) {
(userDict["accounts"] as! [[String:AnyObject]])[index]["history"]! = history
(userDict["accounts"] as! [[String:AnyObject]])[index]["history"] = history
userDict["accounts"][index]["history"] = history
userDict["accounts"][index]["history"]! = history
}
setHistory
内的所有四行尝试做同样的事情,但都失败了。