Есть ли способ сортировки Array Struct с переменными параметрами? - PullRequest
0 голосов
/ 09 октября 2019

Мне нужно отсортировать массив на основе выбора пользователя, но я не знаю, как сделать объявление объявления переменной.

Я сортирую структуру массива из 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...