我的dictionary
类型为[String: [String]]
,并且已加载为空白[ : ]
。
有没有办法可以将值附加到与新字符串键关联的数组中? (即exampleDict["test"].append("test")
)
当我尝试打印字典后,我返回[ : ]
,我认为是因为密钥不存在而返回为零。
答案 0 :(得分:2)
Swift有一个简洁的“默认”功能,可以完全按照这样做。
exampleDict["test", default: []].append("test")
如果exampleDict["test"]
为零,则会返回default
。如果修改返回的默认对象,则该修改将进入字典。
不幸的是,这只适用于值类型,因为类在变异时不会被重新分配。幸运的是,Array
是一种值类型,因此这将在这里完美运行。
答案 1 :(得分:1)
您必须使用Dictionary.subscript(_:default:)
。
exampleDict["test", default: []].append("test")