繁体   English   中英

iOS Swift 4通过特定值对字典进行排序

[英]iOS swift 4 sort dictionary by a particular values

您能帮我对下面的字典中的值“ Val1”进行排序吗?

var data = ["key1" : ["val1": 1,"val2": 1],
            "key2" : ["val1": 5,"val2": 2],
            "key3" : ["val1": 0,"val2": 9]]

我希望这本字典能像这样排序。 “ Val1”的最高值排在最前面(降序)。

var data = [ "key2" : ["val1": 5,"val2": 2],
             "key1" : ["val1": 1,"val2": 1],
             "key3" : ["val1": 0,"val2": 9]]

正如@Sulthan正确指出的那样, Dictionary无法排序。 如果仍然愿意,您将得到一个Array作为结果。

let data = [
    "key1": ["val1": 1,"val2": 1],
    "key2": ["val1": 5,"val2": 2],
    "key3": ["val1": 0,"val2": 9]
]

let result = data.sorted { $0.1["val1"]! > $1.1["val1"]! }
print(result)

[(key:“ key2”,value:[“ val1”:5,“ val2”:2]),(key:“ key1”,value:[“ val1”:1,“ val2”:1]),(键:“ key3”,值:[“ val1”:0,“ val2”:9])]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM