如何对Date数组使用sort函数?

时间:2018-03-02 17:19:00

标签: arrays swift sorting

我有这个数组:

let arraRisultati = DataManager.shared.storage.filter { $0.Data < NSDate() as Date }

我可以使用“排序”功能按时间顺序排列其元素吗?

1 个答案:

答案 0 :(得分:1)

首先,如果您只希望获得日期早于之前的元素,最好只选择一次当前日期,并且可以直接将其作为Date执行:

let now = Date()
let arraRisultati = DataManager.shared.storage.filter { $0.date < now }

由于DateComparable,您可以按照以下方式对其进行排序:

let sortedResults = arraRisultati.sorted(by: { $0.date < $1.date })

如果您愿意,可以在一个表达式中执行:

let now = Date()
let arraRisultati = DataManager.shared.storage.filter({ $0.date < now }).sorted(by: { $0.date < $1.date })