Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 如何在Swift中对NSDate进行排序_Arrays_Swift_Sorting - Fatal编程技术网

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
协议。