我有一个想按字母顺序排序的NSArray,我目前正在使用sortedArrayUsingSelector:@selector (localizedCaseInsensitiveCompare:)
。这返回
CAA
CBL
CCC
Cab
Car
Cat
首字母缩写词按字母顺序排列,然后依次排列。我将使用什么进行排序,以便将首字母缩写词与常规单词一起进行排序?似乎无法在Apple的文档中找到答案。
book = [[self.sections valueForKey:[[[self.sections allKeys] sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)] objectAtIndex:indexPath.section]] objectAtIndex:indexPath.row]
; 最佳答案
您可以使用
- (NSArray *)sortedArrayUsingComparator:(NSComparator)cmptr
并为所需的行为创建NSComparator。
像这样:
NSarray *sortedArray = [myArray sortedArrayUsingComparator:^(id obj1, id obj2) {
//Decide in the order
if (yourCondition)
{
return NSOrderedSame
}
}];