![](/img/trans.png)
[英]Swift 2 Dictionary<String, AnyObject> to Struct getter/setter throwing Cannot subscript value … with an index of type 'String'
[英]swift: cannot subscript a value of type [Dictionary<String, AnyObject>] with an index of type string
我正在嘗試在Swift 3中進行JSON解析。我遇到了上述錯誤。 我的解析技術如下:
if let responseData = data {
do {
let json = try JSONSerialization.jsonObject(with: responseData, options: JSONSerialization.ReadingOptions.allowFragments)
if let dict = json as? [Dictionary<String, AnyObject>] {
if let localityName = dict["name"] as? String ,let localityId = dict["_id"] as? String {
}
}
} catch {
print("could not serialize")
}
}
我在一行中得到錯誤:
if let localityName = dict["name"] as? String ,let localityId = dict["_id"] as? String
請讓我知道如何解決此問題
dict
屬性是字典數組,而不是字典。 您可以訪問第一個元素,命名如下:
dict.first?["name"]
dict
實際上是arr
。 創建一個循環來遍歷它
if let arr = json as? [Dictionary<String, AnyObject>] {
for item in arr {
if let localityName = item["name"] as? String,
let localityId = item["_id"] as? String {
print(localityName, localityId)
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.