我有一个 < String, String>
类型的字典.它可以通过索引值访问,如 dictionary[0]
.但是我想通过使用键以一种简单的方式访问其中的每个值。
var rows: [Dictionary<String, String>] = []
rows = [..] // assigned some value
var value = rows[0]["id"]
println(rows[0]) // ["id": "2", "name": "Bob", "age": "19"]
println(value) // I get nil value
我如何通过这种 key 格式访问。有什么建议。提前致谢。
我试图从 CSV 文件中读取值。并分配给行。当我打印 rows[0]
时它工作正常它显示正确的值。但是在下一行,如果我打印 rows[0]["id"]
它给了我一个零值。我试过像这样的手动字典
rows = [["name": "alvin"]]
var value = rows[0]["name"]
println(value) // prints alvin
有什么区别?
最佳答案
如果您的 key 中有空格,就会发生这种情况。考虑以下因素:
var rows: [Dictionary<String, String>] = []
rows = [["id ": "2", "name": "Bob", "age": "19"]] // assigned some value
var value = rows[0]["id"]
println(rows[0]) // ["id": "2", "name": "Bob", "age": "19"]
println(value) // I get nil value
要检查您的 key ,请像这样打印它们以查看其中是否有任何空间:
for key in rows[0].keys {
println("XXX\(key)XXX")
}
打印:
XXXid XXX
XXXageXXX
XXXnameXXX
显示键 id
后跟一个空格,但 age
和 name
不是。
关于ios - Swift 显示字典类型的 nil 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27420794/