Arrays 如何在Swift中对NSDate进行排序
我有这样一个数组:Arrays 如何在Swift中对NSDate进行排序,arrays,swift,sorting,Arrays,Swift,Sorting,我有这样一个数组: selectedMarks : [StatDetails] = [ StatDetails(dateRanges: [2015-05-29 09:30:00 +0000, 2015-05-29 10:30:00 +0000], hours: 1), StatDetails(dateRanges: [2015-06-16 08:00:00 +0000, 2015-06-16 09:00:00 +0000], hours: 1), StatDetails(dateRa
selectedMarks : [StatDetails] = [
StatDetails(dateRanges: [2015-05-29 09:30:00 +0000, 2015-05-29 10:30:00 +0000], hours: 1),
StatDetails(dateRanges: [2015-06-16 08:00:00 +0000, 2015-06-16 09:00:00 +0000], hours: 1),
StatDetails(dateRanges: [2015-06-10 15:00:00 +0000, 2015-06-10 16:00:00 +0000], hours: 1)]
如您所见,selectedMarks是一个包含2个参数的“StatDetails”数组:
1:dateRanges:NSDate的数组
2:小时:整数
我试图找出如何按照dateRanges数组的第一个元素对StatDetails数组进行排序
我尝试过这个,但没有成功:
selectedMarks.sortInPlace({ $0.dateRanges < $1.dateRanges })
selectedMarks.sortInPlace({$0.dateRanges<$1.dateRanges})
有什么帮助吗???我就是这样做的,谢谢你的帮助
selectedMarks.sortInPlace({ $0.dateRanges[0].compare($1.dateRanges[0]) == NSComparisonResult.OrderedAscending })
这就是我如何做到的,谢谢你的帮助
selectedMarks.sortInPlace({ $0.dateRanges[0].compare($1.dateRanges[0]) == NSComparisonResult.OrderedAscending })
这就是我如何做到的,谢谢你的帮助
selectedMarks.sortInPlace({ $0.dateRanges[0].compare($1.dateRanges[0]) == NSComparisonResult.OrderedAscending })
这就是我如何做到的,谢谢你的帮助
selectedMarks.sortInPlace({ $0.dateRanges[0].compare($1.dateRanges[0]) == NSComparisonResult.OrderedAscending })
我能按如下方式分类写作
selectedMarks.sortInPlace{ $0.dateRanges.timeIntervalSince1970 < $1.dateRanges.timeIntervalSince1970 }
selectedMarks.sortInPlace{$0.dateRanges.timeIntervalSince1970<$1.dateRanges.timeIntervalSince1970}
我可以按如下方式进行排序
selectedMarks.sortInPlace{ $0.dateRanges.timeIntervalSince1970 < $1.dateRanges.timeIntervalSince1970 }
selectedMarks.sortInPlace{$0.dateRanges.timeIntervalSince1970<$1.dateRanges.timeIntervalSince1970}
我可以按如下方式进行排序
selectedMarks.sortInPlace{ $0.dateRanges.timeIntervalSince1970 < $1.dateRanges.timeIntervalSince1970 }
selectedMarks.sortInPlace{$0.dateRanges.timeIntervalSince1970<$1.dateRanges.timeIntervalSince1970}
我可以按如下方式进行排序
selectedMarks.sortInPlace{ $0.dateRanges.timeIntervalSince1970 < $1.dateRanges.timeIntervalSince1970 }
selectedMarks.sortInPlace{$0.dateRanges.timeIntervalSince1970<$1.dateRanges.timeIntervalSince1970}
如果要按日期范围数组中的第一个元素进行排序,需要给它一个如下索引:{$0.dateRange[0]<$1.dateRanges[0]}
@fqdn我以前尝试过,但出现编译错误无法使用类型为“(\u,\ u)->”的参数列表调用“sort”“
可能的重复:您必须将日期与compare()
进行比较,或者为NSDate实现Comparable
协议。如果您想按日期范围数组中的第一个元素排序,您需要给它一个如下索引:{$0.dateRange[0]<$1.dateRanges[0]}
@fqdn我以前尝试过,但是我得到了一个编译错误无法使用类型为“(((,)->>”的参数列表调用“sort”
可能重复的:您必须将日期与比较()
或实现NSDate的Comparable
协议。如果您想按日期范围数组中的第一个元素排序,您需要给它一个如下索引:{$0.dateRange[0]<$1.dateRanges[0]}
@fqdn我以前尝试过,但出现编译错误无法使用类型的参数列表调用“sort”((,)->)
可能的重复:您必须将日期与compare()
进行比较,或者为NSDate实现Comparable
协议。如果您想按日期范围数组中的第一个元素进行排序,您需要给它一个如下索引:{$0.dateRange[0]<$1.dateRanges[0]}
@fqdn我以前尝试过,但是我得到了一个编译错误无法使用类型为“(((,)->”的参数列表调用“sort”)
可能的重复:您必须将日期与compare()
进行比较,或者为NSDate实现compariable
协议。