当swift中存在或不存在键时,如何将元素追加到字典中
我想在字典中附加一个元素。如果钥匙不存在,我想把它弄出来当swift中存在或不存在键时,如何将元素追加到字典中,swift,dictionary,Swift,Dictionary,我想在字典中附加一个元素。如果钥匙不存在,我想把它弄出来 我的解决办法是: if let _ = eventsBySection[key] { eventsBySection[key]?.append(event) } else { eventsBySection[key] = [event] } 有可能把这段代码写得更好吗?或者在一行中?您可以使用nil合并运算符?,并在nil的情况下提供空数组: eventsBySection[key] = (eventsBySection[
我的解决办法是:
if let _ = eventsBySection[key] {
eventsBySection[key]?.append(event)
} else {
eventsBySection[key] = [event]
}
有可能把这段代码写得更好吗?或者在一行中?您可以使用nil合并运算符
?
,并在nil的情况下提供空数组:
eventsBySection[key] = (eventsBySection[key] ?? []) + [event]
编辑/更新:
Swift 4或更高版本可以使用默认值的基于字典键的下标
eventsBySection[key, default: []].append(event)
只需使用扩展名。