У меня есть массив объектов NSString, которые я должен сортировать по убыванию.Сортировка массива (NSArray) в порядке убывания
Поскольку я не нашел API для сортировки массива в порядке убывания, я подошел следующим образом.
Я написал категорию для NSString, как указано ниже.
- (NSComparisonResult)CompareDescending:(NSString *)aString
{
NSComparisonResult returnResult = NSOrderedSame;
returnResult = [self compare:aString];
if(NSOrderedAscending == returnResult)
returnResult = NSOrderedDescending;
else if(NSOrderedDescending == returnResult)
returnResult = NSOrderedAscending;
return returnResult;
}
Тогда я отсортированный массив с помощью оператора
NSArray *sortedArray = [inFileTypes sortedArrayUsingSelector:@selector(CompareDescending:)];
Является ли это правильное решение? Есть ли лучшее решение?
так '' sortDescriptorWithKey 10.6 aboveI использовали следующее заявление. [[NSSortDescriptor alloc] initWithKey: nil по возрастанию: нет]; спасибо ... –
Действительно, я должен был упомянуть об этом - не забывайте -autorelease, хотя :) –
Работает потрясающе! Спасибо! –