簡體   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