有没有一种方法可以对带有可变参数的数组结构进行排序?

时间:2019-10-09 15:56:03

标签: swift sorting

我需要根据用户的选择对数组进行排序,但是我不知道如何使排序声明变量可变。

我正在对具有16列和100条记录的数组结构进行排序。我需要为变量分配需要对其进行排序和子排序的变量,并可以选择升序或降序。我能够对它进行排序,但不更改数百个if语句就不能更改排序选择。

struct arrayStruct {
    var stringV : String!
    var intV : Int!
    var dateV : Date!
    var costV : Float!
    var stringD : String!
}
var newArray = [arrayStruct]()
newArray.sort(by: {($0.stringV, $0.dateV) < ($1.stringV, $1.dateV)}) // This works.

// I want to do this:

let choice = stringV // Error - Use of unresolved identifyer 'StringV'
let order = 0  // How to make this numeric type good after $ ??

newArray.sort(by: {($order.choice, $0.dateV) < ($1.stringV, $1.dateV)}) // So, this doesn't work. Both order and choice are invalide

0 个答案:

没有答案