Swift 3对元组数组进行排序

Tho*_*hom 8 arrays sorting tuples swift swift3

我找到了这些答案:

在swift 3中对元组数组 进行排序如何对元组数组进行排序?

但我还有问题.这是我的代码:

var countsForLetter:[(count:Int, letter:Character)] = []
...
countsForLetter.sorted(by: {$0.count < $1.count})
Run Code Online (Sandbox Code Playgroud)

Swift 3希望我添加by:现在它表示对sorted:by的调用结果未使用.

我是swift 3的新手.对不起,如果这是一个基本问题.

cre*_*eak 17

您正在收到该警告,因为它sorted(by...返回您调用它的数组的新的已排序版本.所以警告指出你没有将它分配给变量或任何东西.你可以说:

countsForLetter = countsForLetter.sorted(by: {$0.count < $1.count})
Run Code Online (Sandbox Code Playgroud)

我怀疑你正在尝试"排序到位",所以在这种情况下你可以sorted(by改为sort(by,它只是排序countsForLetter并将它分配给同一个变量.


Ala*_* T. 5

Sorted()返回一个新数组,它不会排序到位.

您可以使用 :

countsForLetter  = countsForLetter.sorted(by: {$0.count < $1.count})
Run Code Online (Sandbox Code Playgroud)

要么

countsForLetter.sort(by: {$0.count < $1.count})
Run Code Online (Sandbox Code Playgroud)