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