我必须处理像这样的词典,或者更多嵌套的词典。
如何访问“twotwo”之类的字段?还是有更好的可能性为这种结构建模?
let nestedDict = [
"fieldOne": "name",
"fieldTwo": "name",
"fieldThree":
[
[
"twoOne": "some text",
"twoTwo": true,
"twoThree": 1e-40
],
[
"twoOne": "some text",
"twoTwo": true,
"twoThree": 1e-40
]
]
]
最佳答案
nestedDict
是Dictionary
,您可以通过以下方式获得fieldThree
let fieldThree = nestedDict["fieldThree"] as! [[String:Any]] // [[String:AnyObject]] in Swift 2 and lower.
fieldThree
是Array
字典的[String:AnyObject]
,您可以使用以下命令获取第一个数组项的twoTwo
的值let twoTwo = fieldThree[0]["twoTwo"] as! Bool
您甚至可以检索数组中
twoTwo
键的所有值let allTwoTwo = fieldThree.map { $0["twoTwo"] as! Bool }