swift - 将元素附加到字典中的现有键?

标签 swift

<分区>

var iniArray = ["yikes", "bye"]

var wordDict: [Int: Array<String>]?

// initialize the wordDict
wordDict[0] = iniArray

现在假设我想将另一个字符串元素添加到键 0 的值中。例如“bike”。这样就变成了:

wordDict[0] = ["yikes", "bye", "bike"]

我该怎么做?

最佳答案

它看起来像你的这部分代码:

var wordDict: [Int: Array<String>]?

是无意的。在这里,您将 whole 字典设为可选,这没有多大意义。这就是(我想象的)您的意图:

var wordDict: [Int: Array<String>]

不过,一般情况下,最好使用数组速记:

var wordDict: [Int: [String]]

无论如何,要将此字典初始化为空字典,您需要这样做:

var wordDict: [Int: [String]] = [:]

然后,要添加初始数组,您可以这样做:

wordDict[0] = ["yikes", "bye"]

最后,要追加额外的元素,您可以使用 optional chaining :

wordDict[0]?.append("bike")

如果您确实打算让整个词典成为可选的,您只需要一个额外的?:

var wordDict: [Int: [String]]? = [:]
wordDict?[0] = ["yikes", "bye"]
wordDict?[0]?.append("bike")
wordDict?[0] // ["yikes", "bye", "bike"]

关于swift - 将元素附加到字典中的现有键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34005596/

相关文章:

ios - 类型 NSArray 不能被隐式向下转换

ios - 对于 Swift 5 和 iOS 12.2+,我应该将 "Always Embed Swift Standard Libraries"更改为 NO 吗?

ios - TableView Reloaddata 在编辑更改值时不起作用

ios - 如何使uitableview的最后一行填充空白

ios - iOS更新后搜索栏变形

swift - 向服务器提交数据成功后如何切换标签栏索引?

swift - Parse - 使用 Swift 进行子类化?

ios - 实例成员 'navigationItem' 不能用于类型 'MainViewController'

swift - 选择 TableView 中的每一行,包括屏幕外的行

ios - Swift:清除推送通知计数器的方法是什么?