簡體   English   中英

按字母順序對數組進行排序Swift3

[英]Sort Array Alphanumerically Swift3

我有一個在Xcode 8 Beta中使用的函數,該函數先按字母順序然后按數字順序對數組進行排序。

我使用的功能是:

func sortArray(arrayToSort: [String])->[String]{

let sortedArray = arrayToSort.sorted {
(first, second) in
first.compare(second, options: .numericSearch) == ComparisonResult.orderedAscending
}
   print(sortedArray)
   return sortedArray
}

但是,這不再起作用了。 有誰知道我如何在Swift 3中做到這一點?

有一個函數sort() ,您可以通過它對數組進行排序

var arrSort = ["Rajat", "Test", "Sort", "Array","2","6"]
arrSort.sort()
print(arrSort)

經過進一步的挖掘,我找到了答案:

let myArray = ["Step 6", "Step 12", "Step 10"]

let sortedArray = myArray.sorted {
$0.compare($1, options: .numeric) == .orderedAscending
}

print(sortedArray) // ["Step 6", "Step 10", "Step 12"]

這是基於Martin R和Duncan C的帖子。

謝謝! ^ _______ ^

您可以嘗試以下示例:

func sortArray(arrayToSort: [String])->[String] {
   let sortedArray = arrayToSort.sorted(by:) {
     (first, second) in
     first.compare(second, options: .numeric) == ComparisonResult.orderedAscending
   }
   print(sortedArray)
   return sortedArray
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM