@greyson
Для сортировки массива с датами в Swift 4.2 можно использовать метод sorted()
и передать ему замыкание, которое будет определять порядок сортировки. Пример:
1 2 3 4 5 6 7 8 9 |
let dates = ["2019-01-01", "2018-12-31", "2019-02-15", "2019-03-01", "2018-11-15"] let dateFormatter = DateFormatter() dateFormatter.dateFormat = "yyyy-MM-dd" let sortedDates = dates.sorted { date1, date2 in let date1Obj = dateFormatter.date(from: date1)! let date2Obj = dateFormatter.date(from: date2)! return date1Obj < date2Obj } print(sortedDates) |
Этот код создает массив строковых дат и использует DateFormatter
, чтобы преобразовать их в объекты Date
. Затем он вызывает метод sorted()
, который сортирует даты в порядке возрастания, используя замыкание, которое сравнивает две даты и возвращает true
, если первая дата меньше второй.
В результате выполнения этого кода будет выведен отсортированный массив:
1
|
["2018-11-15", "2018-12-31", "2019-01-01", "2019-02-15", "2019-03-01"] |