我正在尝试制作一个应用,为此我需要一个字典,但是当我尝试在字典中访问存储的值时,出现错误消息。
let dictt = ["Holmsbu":["water": true, "power": true],
"Kragerø":["water": false, "power": true]]
print(dictt["Holmsbu"]!)
我尝试使用以下代码进行访问:
print(dictt["Holmsbu"["water"]])
但是我得到的只是这个错误:
退出状态1 main.swift:2:22:错误:无法使用索引类型为“字符串”的下标类型为“字符串”的值 打印(dictt [“ Holmsbu” [“ water”]]!) ^
main.swift:2:22:注意:存在这些部分匹配的参数列表的'subscript'重载:(String.Index),(Range),(ClosedRange),(Int),(Range),(ClosedRange ),(CountableRange),(CountableClosedRange) print(dictt [“ Holmsbu” [“ water”]]!)
答案 0 :(得分:1)
您将]
放在错误的位置。应该是:
print(dictt["Holmsbu"]!["water"]!)
更好的是:
print(dictt["Holmsbu"]?["water"] ?? false)
我添加了?? false
来处理所有可选选项。这比使用!
更好,如果键不在字典中,则崩溃会崩溃。