如何按 Int 值对元组数组进行排序?
Posted
技术标签:
【中文标题】如何按 Int 值对元组数组进行排序?【英文标题】:How to sort an array of tuples by an Int value? 【发布时间】:2017-02-20 13:45:32 【问题描述】:我有一个元组数组(
var array = [("John Doe", 13), ("The Guy", 15), ("The Person", 19)]
并希望按照 int 值从大到小对它们进行排序。最后我希望数组看起来像这样
var array = [("The Person", 19), ("The Guy", 15), ("John Doe", 13)]
我将如何做到这一点?
【问题讨论】:
【参考方案1】: var array = [("John Doe", 13), ("The Guy", 15), ("The Person", 19)]
print("myStringArray: \(array)\n")
array.sort $0.1 > $1.1
print("myStringArray: \(array)\n")
【讨论】:
【参考方案2】:您必须通过$1
值进行比较,即元组的 Int 值,检查此代码,将对您有所帮助
var tuplesArray : [(String,Int)] = [("John Doe", 13), ("The Guy", 15), ("The Person", 19)]
let orderedTuples = tuplesArray.sorted (value1, value2) -> Bool in
return value1.1 > value2.1
希望对你有帮助
【讨论】:
像if someCondition return true else return false
这样的语句总是可以简化为return someCondition
。
感谢@MartinR 的推荐,我的答案已编辑以上是关于如何按 Int 值对元组数组进行排序?的主要内容,如果未能解决你的问题,请参考以下文章