我有这个数组:
let arraRisultati = DataManager.shared.storage.filter { $0.Data < NSDate() as Date }
我可以使用“排序”功能按时间顺序排列它的元素吗?
最佳答案
首先,如果你只想获取日期早于现在的元素,最好只获取一次当前日期,你可以直接将其作为Date
:
let now = Date()
let arraRisultati = DataManager.shared.storage.filter { $0.date < now }
因为 Date
是 Comparable
,你可以这样排序:
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 })
关于arrays - 如何对日期数组使用排序函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49074179/