另一个变种是使用
localizedStandardCompare:。从文档中:
只要在类似Finder排序的列表和表中显示文件名或其他字符串,就应使用此方法。
这将根据当前语言环境对字符串进行排序。例:
let myArray = ["Step 6", "Step 12", "Step 10"]let ans = sorted(myArray,{ (s1, s2) in return s1.localizedStandardCompare(s2) == NSComparisonResult.OrderedAscending})println(ans)// [Step 6, Step 10, Step 12]更新: 上面的答案是很老的,对于Swift 1.2。一个 斯威夫特3 版(感谢@Ahmad):
let ans = myArray.sorted { (s1, s2) -> Bool in return s1.localizedStandardCompare(s2) == .orderedAscending}


