我正在尝试从 json 中提取信息数组,我收到此错误
“无法使用类型为‘String’的索引下标类型为‘[[String : Any]]’的值”
这里
if let rev = place.details?["reviews"] as? [[String:Any]] {
if let ver = rev["author_name"] as? String { // <- IN THIS LINE I GET THE ERROR
}
}
我知道如果我将类型转换为 [String : Any]
而不是 [[String:Any]]
它会起作用,但在这种情况下我有将其转换为数组数组,否则它不会读取 json,那么我该如何解决这个问题?
最佳答案
[[String:Any]]
是一个数组。它只能被Int
索引下标。
例如,您必须遍历数组:
if let reviews = place.details?["reviews"] as? [[String:Any]] {
for review in reviews {
if let authorName = review["author_name"] as? String {
// do something with authorName
}
}
}
关于ios - 无法使用类型为 '[[String : Any]]' 的索引下标类型为 'String' 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48868193/