数组排序-NSSortDescriptor · 数组
该类可以方便的实现对数组中的对象进行升序或者降序的排序。它能够把元素的某个属性做为key进行升序或降序的排序,每个NSSortDescriptor 对象就是一个排序条件。 函数
建立数组对象spa
NSArray *array = @[@“zhonger”, @honghuang”,@“bada”];对象
建立排序条件 排序
NSSortDescriptor *descriptor = [[NSSortDescriptor alloc] initWithKey:@"self" ascending:YES]; · · ip
数组根据排序条件进 排序it
NSArray *resultArray = [array sortedArrayUsingDescriptors:@[descriptor]];table
其余数组排序方法 class
不可变数组排序 select
不可变数组排序:(排序结果造成新数组, 原数组不改变) - (NSArray *)sortedArrayUsingSelector: (SEL)comparator; 注:SEL类型的参数comparator:须要传一个返回结果是NSComparisonResult的方法名。
例:
NSArray *array = @[@“zhonger”, @“bada”, @“honghuang”,@“qiuxiang”];
NSArray *newArray = [array sortedArrayUsingSelector:@selector(compare:)];
可变数组排序
可变数组排序:(直接对原数组操做)- (void)sortUsingSelector:(SEL)comparator;
注:SEL类型的参数comparator:须要传一个返回结果是NSComparisonResult 的函数 注意:可变数组排序 法与不可变数组
NSMutableArray *array = [@[@“zhonger”, @“bada”, @“honghuang”,@“qiuxiang”] mutableCopy];
[array sortUsingSelector:@selector(compare:)];