我有一个[[Date:[Double]]]
,我想根据元素的键(即日期)按最接近最远的日期排序。
使用Swift执行此操作最有效的方法是什么?我已经在使用NSSortDescriptor之前完成了此操作,但这是在使用键/值对进行排序时进行的。我以前还没有按实际的密钥进行排序。
示例数据:
[[2020-12-18 06:00:00 +0000: [475.4]], [2020-11-06 06:00:00 +0000: [427.475, 449.22]], [2020-11-06 00:09:33 +0000: [435.26, 441.605]]]
答案 0 :(得分:1)
按照马特的建议,使模型如下:
struct DateStruct {
let date: Date
let values: [Double]
}
var dateStructsArray: [DateStruct] = []
//Populate your array in whatever way makes sense
然后将其排序就像使用一次对sorted()
您的代码可能如下所示:
let sortedDateStructs = dateStructsArray.sorted { $0.date < $1.date }
答案 1 :(得分:-1)
如邓肯所建议: 第一:解析所需数据 第二:将数据设置为数组的dateStruct,您可以使用该数组执行操作。