|
发表于 2016-6-7 10:52:48
|
查看: 726 |
回复: 2
本帖最后由 疯狂覅 于 2016-6-7 10:55 编辑
定义排序方法
NSInteger intSort(id num1,id num2,void *content){ if ([num1 intValue]<[num2 intValue]) { return NSOrderedAscending; }else if ([num1 intValue]>[num2 intValue]){ return NSOrderedDescending; }else{ return NSOrderedSame; }}
常见的排序方法
- NSArray *array=[NSArray arrayWithObjects:
- [NSNumber numberWithInt:20],
- [NSNumber numberWithInt:23],
- [NSNumber numberWithInt:22],
- [NSNumber numberWithInt:1],
- nil];
- /*使用sortedArrayUsingFunction排序*/
- NSLog(@"%@",[array sortedArrayUsingFunction:intSort context:nil]);
- /*使用sortedArrayUsingComparator进行排序*/
- NSLog(@"%@",[array sortedArrayUsingComparator:^NSComparisonResult(id _Nonnull obj1, id _Nonnull obj2) {
- if ([obj1 intValue] < [obj2 intValue]) {
- return NSOrderedAscending;
- }else if ([obj1 intValue] >[obj2 intValue]){
- return NSOrderedDescending;
- }else{
- return NSOrderedSame;
- }
- }]);
- /*使用sortedArrayUsingSelector进行排序*/
- NSLog(@"%@",[array sortedArrayUsingSelector:@selector(compare:)]);
复制代码
|
|