У меня есть массив объектов NSString, которые я должен сортировать по убыванию.
Так как я не нашел 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:)];
Это правильное решение? есть ли лучшее решение?