【发布时间】:2017-02-17 04:22:45
【问题描述】:
我是 Swift 新手,在对多维数组进行排序时遇到困难。 (Alamofire 和 SwiftyJSON 已安装并导入)
我想按每个人的最高分对主 JSON 数组进行排序。 我能够对每个 ["scores"] 进行排序
for x in 0..<JSONArray.count{
let b = JSONArray[x]["scores"].array?.sorted{$0["test"] < $1["test"]}
}
但是,我不知道如何影响主要的 JSON 数组顺序。
这是我的 JSON 文件,
{"students": [{
"id": 1,
"profile": [{
"name": "Kenneth",
"age": 19
}],
"scores": [{
"test": 62
}, {
"test": 80
}, {
"test": 95
}]
}, {
"id": 2,
"profile": [{
"name": "Thomas",
"age": 12
}],
"scores": [{
"test": 60
}, {
"test": 92
}, {
"test": 30
}]
}, {
"id": 3,
"profile": [{
"name": "May",
"age": 15
}],
"scores": [{
"test": 62
}, {
"test": 72
}, {
"test": 100
}]
}]}
我想要的最终 JSON 输出是
{"students": [{
"id": 3,
"profile": [{
"name": "May",
"age": 15
}],
"scores": [{
"test": 100
}, {
"test": 72
}, {
"test": 62
}]
}, {
"id": 1,
"profile": [{
"name": "Kenneth",
"age": 19
}],
"scores": [{
"test": 95
}, {
"test": 80
}, {
"test": 62
}]
}, {
"id": 2,
"profile": [{
"name": "Thomas",
"age": 12
}],
"scores": [{
"test": 92
}, {
"test": 60
}, {
"test": 30
}]
}]}
感谢您的帮助!
【问题讨论】:
-
给我们一个实际的 Swift 测试用例。我们不想浪费时间将您的 JSON 格式化为有效的 Swift。
-
感谢您的建议。这是我在stackoverflow上提出问题的第一篇文章......并且不知道如何巧妙地提出我的问题......我下次会改进:)
标签: arrays json swift sorting swifty-json