快速键存在或不存在时如何将元素追加到字典 [英] How to append an element to dictionary when the key exist or not exist in swift

查看:24
本文介绍了快速键存在或不存在时如何将元素追加到字典的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想向字典添加一个元素.如果密钥不存在,我想这样做.
我的解决方法是这样:

I want to append an element to dictionary. And I want to make it if the key not exist.
My solution is this:

if let _ = eventsBySection[key] {
   eventsBySection[key]?.append(event)
} else {
    eventsBySection[key] = [event]
}

是否可以更好地编写此代码?还是一行?

Is it possible to write this code better? or in one line?

推荐答案

您可以使用nil合并运算符 ?? 并在nil的情况下提供一个空数组:

You can use nil coalescing operator ?? and provide an empty array in case of nil:

eventsBySection[key] = (eventsBySection[key] ?? []) + [event] 

编辑/更新:

Swift 4或更高版本,您可以使用具有默认值的基于字典键的下标

Swift 4 or later You can use Dictionary Key-based subscript with default value

eventsBySection[key, default: []].append(event)

这篇关于快速键存在或不存在时如何将元素追加到字典的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆