func exercise() {
var stockTickers: [String: String] = [
"APPL" : "Apple Inc",
"HOG": "Harley-Davidson Inc",
"BOOM": "Dynamic Materials",
"HEINY": "Heineken",
"BEN": "Franklin Resources Inc"
]
stockTickers["WORK"] = ["Slack Technologies Inc"]
stockTickers["BOOM"] = ["DMC Global Inc"]
print(stockTickers["WORK"]!)
print(stockTickers["BOOM"]!)
}
错误:无法将类型“[String]”的值分配给类型“String”的下标
我不明白这个错误,我是 swift 的新手,有人可以指导我完成这个并告诉 mw 为什么我会看到这个错误。
最佳答案
Alexander 以抽象的方式解释了您需要做什么。 (已投票)
具体来说,改变
stockTickers["WORK"] = ["Slack Technologies Inc"]
stockTickers["BOOM"] = ["DMC Global Inc"]
到
stockTickers["WORK"] = "Slack Technologies Inc"
stockTickers["BOOM"] = "DMC Global Inc"
表达式 ["Slack Technologies Inc"]
定义了一个包含单个字符串的字符串数组。那不是你想要的。您定义了 [String:String]
如果您希望字典具有包含字符串数组的字符串键和值,则必须更改声明字典的方式:
var stockTickers: [String: [String]] = [
"APPL" : ["Apple Inc"],
"HOG": ["Harley-Davidson Inc"],
"BOOM": ["Dynamic Materials"],
"HEINY": ["Heineken"],
"BEN": ["Franklin Resources Inc"]
]
关于swift - 如何快速添加/更新字典中的键/值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67167905/