如何在 iPhone 中按降序对数组进行排序 [英] How to sort an array in descending order in iPhone
本文介绍了如何在 iPhone 中按降序对数组进行排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试按降序对数组进行排序,我可以按升序对数组进行排序,这是我按升序排序的代码,
I am trying to sort an array in descending order,I can sort array in ascending order,Here is my code to sort in ascending order,
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"year" ascending:NO];
NSArray * descriptors = [NSArray arrayWithObjects:sortDescriptor, nil];
sortedArray = [array sortedArrayUsingDescriptors:descriptors];
dictionaryWithSortedYears = [[NSMutableDictionary alloc] init];
NSString *tempDateKey = nil;
for (TreeXmlDetails *list in sortedArray)
{
id obj = [dictionaryWithSortedYears objectForKey:list.year];
if(!obj)
{
if(tempDateKey == nil)
{
arrayFromList = [[NSMutableArray alloc] init];
tempDateKey = list.year;
}
}
if([list.year isEqualToString:tempDateKey])
[arrayFromList addObject:list];
else
{
[dictionaryWithSortedYears setObject:arrayFromList forKey:tempDateKey];
tempDateKey = nil;
arrayFromList = nil;
arrayFromList = [[NSMutableArray alloc] init];
tempDateKey = list.year;
[arrayFromList addObject:list];
}
}
[dictionaryWithSortedYears setObject:arrayFromList forKey:tempDateKey];
NSArray *arr = [dictionaryWithSortedYears allKeys];
sortedKeys = [[NSArray alloc] initWithArray:[arr sortedArrayUsingSelector:@selector(compare:)]];
但是,我想按降序对数组进行排序,请帮帮我.提前致谢.
But, I want to sort an array in descending array,Please help me. Thanks in advnace.
推荐答案
使用以下内容:
[yourArrayToBeSorted sortUsingComparator:^NSComparisonResult(id obj1, id obj2){
return [(NSDate *)obj2 compare:(NSDate *)obj1];} ];
这篇关于如何在 iPhone 中按降序对数组进行排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文