Iphone 对日期进行排序

Iphone 对日期进行排序,iphone,objective-c,ios,nsdate,nsdictionary,Iphone,Objective C,Ios,Nsdate,Nsdictionary,我的程序中有几个字典,我把所有这些字典放在一个数组中,我想对这些日期进行排序。字典应该交换它的位置,下面显示的是我正在使用的代码,但我没有对它进行排序。请帮我解决这个问题 **NSLog(@“排序前---%d”,[allDataArray计数] 对于(int i=0;i看起来你在重新发明轮子(几十年前就解决了排序问题),请执行以下操作: NSArray *allDataArray = ...; NSArray *sortedAllDataArray = [allDataArray sortedA

我的程序中有几个字典,我把所有这些字典放在一个数组中,我想对这些日期进行排序。字典应该交换它的位置,下面显示的是我正在使用的代码,但我没有对它进行排序。请帮我解决这个问题

**NSLog(@“排序前---%d”,[allDataArray计数]


对于(int i=0;i看起来你在重新发明轮子(几十年前就解决了排序问题),请执行以下操作:

NSArray *allDataArray = ...;
NSArray *sortedAllDataArray = [allDataArray sortedArrayUsingDescriptors:[NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"Date" ascending:YES]]];
或者这个:

NSArray *allDataArray = ...;
NSArray *sortedAllDataArray = [allDataArray sortedArrayUsingComparator:^NSComparisonResult(NSDictionary *dict1, NSDictionary *dict2) {
    return [[dict1 objectForKey:@"Date"] compare:[dict2 objectForKey:@"Date"]];
}]

看起来您正在重新发明轮子(几十年前就解决了排序问题),请执行以下操作:

NSArray *allDataArray = ...;
NSArray *sortedAllDataArray = [allDataArray sortedArrayUsingDescriptors:[NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"Date" ascending:YES]]];
或者这个:

NSArray *allDataArray = ...;
NSArray *sortedAllDataArray = [allDataArray sortedArrayUsingComparator:^NSComparisonResult(NSDictionary *dict1, NSDictionary *dict2) {
    return [[dict1 objectForKey:@"Date"] compare:[dict2 objectForKey:@"Date"]];
}]

如果这应该是冒泡排序,那么它不是。你没有交换这两个条目。如果这应该是冒泡排序,那么它不是。你没有交换这两个条目。@karthick:太好了,很高兴我能帮助你!顺便说一句,这是你关于StackOverflow的第一个问题,让我给你介绍一件整洁的事情:你可以接受你的问题的最佳答案将stion标记为“正确”,以便将您的问题标记为已解决,从而使您和其他未来访问者能够更高效地搜索StackOverflow上特定问题的有效解决方案。已解决的问题显示为黄色的“n答案”在搜索结果或列表中添加标签。若要接受答案,每个答案旁边的左边都有一个复选标记,单击后会变为绿色。无论如何,祝您在StackOverflow上玩得开心!感谢您让我知道。@karthick:太好了,很高兴我能帮您!顺便说一句,这是您关于StackOverflow的第一个问题,让我给您介绍一些简单的东西:您可以接受问题的最佳答案为“正确”,以便将您的问题标记为已解决,从而使您和其他未来访问者能够更高效地搜索StackOverflow上特定问题的有效解决方案。已解决的问题显示为黄色的“n答案”在搜索结果或列表中添加标签。若要接受答案,在每个答案旁边的左侧都有一个复选标记,单击该复选标记将变为绿色。无论如何,请享受StackOverflow的乐趣!感谢您让我知道。