字典的Nil合并运算符

尝试访问/检查字典中的键并添加值。

myDict["Algebra"]最初返回nil. 为什么“零合并”在这里不起作用?

var myDict = [String : [Int]]()
myDict["Algebra"]?.append(contentsOf: [98,78,83,92]) ?? myDict["Algebra"] = [98,78,83,92]

回答

虽然这适用于括号,但您要解决的问题正是default下标的作用,而不会将??运算符滥用为具有if副作用的隐式语句:

myDict["Algebra", default: []].append(contentsOf: [98,78,83,92])

您可能还会发现此语法更清晰一些:

myDict["Algebra", default: []] += [98,78,83,92]


以上是字典的Nil合并运算符的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>