如何根据日期和时间对数组进行排序

时间:2015-02-25 05:23:17

标签: ios

我的日期字符串形式为" yyyy-MM-dd HH:mm"我在数组中有大约100个obhjects,具有不同的日期和时间。现在我的问题是如何根据时间和日期对这个数组进行排序,我试过很多方面但没有用。可以任何人帮助我。提前谢谢

2 个答案:

答案 0 :(得分:0)

使用此方法对数组进行排序。

NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"date" ascending:NO];
NSArray *sortedArray = [detailsArray sortArrayUsingDescriptors:@[sortDescriptor]];

可能对你有所帮助

答案 1 :(得分:0)

如果你有一个字符串数组,请利用你的日期格式,然后用词法排序。

NSArray* sorted = [dates sortedArrayUsingComparator:^(NSString* a, NSString* b) {
    return [a compare:b];
}];

如果你实际上有一个NSDate对象数组,使用NSDate比较函数,使用几乎相同的代码(比较:在很多情况下用于比较两个同质数据类型)

NSArray* sorted = [dates sortedArrayUsingComparator:(NSDate* a, NSDate* b) {
    return [a compare:b];
}];

由于比较器的简单性,您实际上可以直接使用选择器:

NSArray* sorted = [dates sortedArrayUsingSelector:@selector(compare:)];