簡體   English   中英

根據特定鍵在swift3中對字典進行排序

[英]Sorting an dictionary of dictionary in swift3 based on particular key

我從 API 收到以下響應,我需要根據 displayOrder 鍵對這個字典進行排序。 因此,根據下面的代碼,您可以看到當前的訂單是 [SALE, OFFER, DISCOUNT, SOLD],我想按照 [SALE, SOLD, OFFER, DISCOUNT] 的順序排列。

["SALE": {
    displayOrder = 1;
    segId = 2;
    chg = 2;
}, "OFFER": {
    displayOrder = 3;
    segId = 4;
    chg = 2;
}, "DISCOUNT": {
    displayOrder = 4;
    segId = 1;
    chg = 1;
}, "SOLD": {
    displayOrder = 2;
    segId = 2;
    chg = 1;
}]

使用sorted函數對其進行簡單排序,例如:

let dic = ["SALE": [
    "displayOrder" : 1,
    "segId" : 2,
    "chg" : 2,
    ], "OFFER": [
        "displayOrder" : 3,
        "segId" : 4,
        "chg" : 2,
    ], "DISCOUNT": [
        "displayOrder" : 4,
        "segId" : 1,
        "chg" : 1,
    ], "SOLD": [
        "displayOrder" : 2,
        "segId" : 2,
        "chg" : 1,
    ]]

dic.sorted { (lhs, rhs) -> Bool in
    lhs.value["displayOrder"]! < rhs.value["displayOrder"]!
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM