这种奇怪的行为让我感到困惑。我打算创建一个带有单个数组字段的字典。然后在这个数组中,附加了两个额外的子字典。这是代码,
var dictionary = [String: Any]()
var array = [[String: Any]]()
dictionary["array"] = array
var dict1:[String:Any] = ["abc": 123, "def": true]
var dict2:[String:Any] = ["111": 1.2345, "222": "hello"]
array.append(dict1)
array.append(dict2)
从调试器输出中可以看到,var 数组已成功更新(附加了 2 个子字典)。但dictionary["array"]
仍然有 0 值。
看起来 ( dictionary["array"]
) 和 ( array
) 是两个独立的对象