0
我正在使用懒惰地图集合保存数据,并使用此默认函数通过使用名称(这是现有字段之一)对数组进行排序,现在我想使用日期对其进行排序这已经保存在一个参数中。我应该如何做到这一点。在懒惰地图集合中按日期快速排序
let resultingSecs = secs.values.map { uts in
(uts.0, uts.1.sort(<))
}.sort { (luts, ruts) -> Bool in
luts.0.name < ruts.0.name
}
秒是一个数组var secs: [UUID: (User, [Timeline])] = [:]
let resultingSecs = secs.values.map { uts in
(uts.0, uts.1.sort(<))
}.sort { (luts, ruts) -> Bool in
var date1 = luts.0.updated_at
var date2 = ruts.0.updated_at
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let status:Bool = dateFormatter.dateFromString(date1)?.compare(dateFormatter.dateFromString(date2)!) == NSComparisonResult.OrderedAscending
return status
}
现在我特林这个上面的代码
我不明白这个_“我想排序它使用已保存的日期之一的参数”_。你想用什么作为排序标准? – courteouselk
我有一个具有不同timlelines(用户)数据的数组,并且目前它们正按照用户名进行排序,如代码中所示,我想按日期对它们进行排序.... –
您的代码似乎足够好。但我会使用'dateFormatter.dateFromString(date1)!而不是?',因为如果dateFromString为null,那么行为会非常直观。此外,它似乎暗示在您的代码中,这种情况不应该发生 –