使用 SwiftyJSON 遍历数组字典字典
Posted
技术标签:
【中文标题】使用 SwiftyJSON 遍历数组字典字典【英文标题】:Looping through array-dictionary-dictionary using SwiftyJSON 【发布时间】:2016-12-22 15:04:00 【问题描述】:我正在尝试使用 SwiftyJSON 循环遍历这个 JSON 样本以获取 age
、name
和 type
。我成功获得了name
和age
,但type
对我来说很难。有人可以告诉我怎么做吗?
"both": [
"id": 130,
"name": "TMT",
"age": "2006",
"created_at": "2016-12-19 21:37:06",
"updated_at": "2016-12-19 21:37:06",
"pic": "1482183426.png",
"pivot":
"user_id": 4,
"car_id": 130,
"type": "rent"
,
"id": 113,
"name": "TMT ",
"age": 2016,
"created_at": "2016-12-18 14:46:18",
"updated_at": "2016-12-18 14:47:41",
"pic": "",
"pivot":
"user_id": 4,
"car_id": 113,
"type": "rent"
]
工作
let json = JSON(value)
for (key, subJson) in json
let cars = subJson["both"]
for (key, subJson) in cars
print(subJson["age"])
【问题讨论】:
与获取“name”作为 String 的方式相同,您必须将“pivot”作为 [String: Any] 字典然后你可以从字典中获取值。 这就是我获得age
的方式。我应该再循环一次吗?我认为 swifty-json 有一个更简单的方法let json = JSON(value) for (key, subJson) in json let cars = subJson["both"] for (key, subJson) in cars print(subJson["age"])
请看你上面的评论
【参考方案1】:
您只需访问pivot
字典并从那里读取type
键。
let json = JSON(value)
for (key, subJson) in json
let cars = subJson["both"]
for (key, subJson) in cars
let age = subJson["age"]
// Access pivot dictionary
let pivot = subJson["pivot"]
// Get type from pivot dictionary
let type = pivot["type"]
【讨论】:
以上是关于使用 SwiftyJSON 遍历数组字典字典的主要内容,如果未能解决你的问题,请参考以下文章
使用 swift 2.1 遍历一个 JSON 命名的字典数组