Swift 3对元组数组进行排序

时间:2017-03-03 00:36:32

标签: arrays swift sorting swift3 tuples

我找到了这些答案:

Sort an array of tuples in swift 3 How to sort an Array of Tuples?

但我仍有问题。这是我的代码:

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

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

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

2 个答案:

答案 0 :(得分:14)

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

countsForLetter = countsForLetter.sorted(by: {$0.count < $1.count})

我怀疑您正在尝试“排序”,所以在这种情况下,您可以将sorted(by更改为sort(by,它只会排序countsForLetter并将其分配给相同的变量。

答案 1 :(得分:5)

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

你可以使用:

countsForLetter  = countsForLetter.sorted(by: {$0.count < $1.count})

countsForLetter.sort(by: {$0.count < $1.count})