swift2:从字典中获取按键排序的键数组

时间:2016-08-27 17:50:39

标签: sorting dictionary swift2

我正在尝试从字典中获取数组o键,其中数组按值排序。例如:

//dictionary contains [alpha:C],[beta:A],[gamma:B]

我的数组应该返回:

//[beta, gamma, alpha]

我试过了:

let keys = Array(myDictionary.keys).sort({ (a,b) -> Bool in
        a.compare(b) == .OrderedAscending
    })

但是这会按键返回顺序:

//[alpha, beta, gamma]

1 个答案:

答案 0 :(得分:2)

鉴于你的字典

let dict = ["alpha":"C","beta":"A","gamma":"B"]

您可以使用此代码按值对键进行排序

let keysSortedByValue = dict.sort { $0.1 < $1.1 }.map { $0.0 }

// ["beta", "gamma", "alpha"]

更新

此屏幕截图将回答您在下面的评论

enter image description here