swift2:从按值排序的字典中获取键数组
swift2: get array of keys from dictionary sorted by values
我正在尝试从字典中获取一个键数组,其中数组按值排序。例如:
//dictionary contains [alpha:C],[beta:A],[gamma:B]
我的数组应该 return:
//[beta, gamma, alpha]
我试过了:
let keys = Array(myDictionary.keys).sort({ (a,b) -> Bool in
a.compare(b) == .OrderedAscending
})
但是这个return按键顺序:
//[alpha, beta, gamma]
根据你的字典
let dict = ["alpha":"C","beta":"A","gamma":"B"]
您可以使用此代码按值对键进行排序
let keysSortedByValue = dict.sort { [=11=].1 < .1 }.map { [=11=].0 }
// ["beta", "gamma", "alpha"]
更新
此屏幕截图用于回答您在下方的评论
我正在尝试从字典中获取一个键数组,其中数组按值排序。例如:
//dictionary contains [alpha:C],[beta:A],[gamma:B]
我的数组应该 return:
//[beta, gamma, alpha]
我试过了:
let keys = Array(myDictionary.keys).sort({ (a,b) -> Bool in
a.compare(b) == .OrderedAscending
})
但是这个return按键顺序:
//[alpha, beta, gamma]
根据你的字典
let dict = ["alpha":"C","beta":"A","gamma":"B"]
您可以使用此代码按值对键进行排序
let keysSortedByValue = dict.sort { [=11=].1 < .1 }.map { [=11=].0 }
// ["beta", "gamma", "alpha"]
更新
此屏幕截图用于回答您在下方的评论