主要是使用sorted函數,自己提供排序規則,或者自己重載< 或者 >
1.sorted對數組內的字符串升序
1 var name2 : [String] = ["Alice","Mike","Bob","May","Cake"] 2 3 name2 = name2.sorted({name1 , name2 in 4 5 return name1.localizedStandardCompare(name2) == NSComparisonResult.OrderedAscending 6 7 }) 8 9 name2
輸出結果:
["Alice", "Bob", "Cake", "May", "Mike"]
NSComparisonResult.OrderedDescending降序
2.重載 <
1 var names : [String] = ["Alice","Mike","Bob","May","Cake"] 2 names = names.sorted({$0 < $1}) 3 4 names 5 6 func < (lhs: String, rhs:String) -> Bool { 7 return lhs.localizedStandardCompare(rhs) == NSComparisonResult.OrderedAscending 8 }
輸出:["Alice", "Bob", "Cake", "May", "Mike"]
也可以重載 > 降序,修改NSCompareResult即可.