黑马程序员技术交流社区

标题: 请问NSArray的排序方法有哪些? [打印本页]

作者: 泠风小和    时间: 2014-9-13 17:45
标题: 请问NSArray的排序方法有哪些?

网上资料挺乱的,谁能指点一下,谢谢了。只看懂了个:[array sortedArrayUsingSelector:@selector(compare:)];

作者: SailY    时间: 2014-9-13 21:31
第一个是@,第二个是:
作者: 0o小迷糊o0    时间: 2014-9-14 08:15
  1. // 利用可变数组exchangeObjectAtIndex: NSUInteger i withObjectAtIndex:j交换变量
  2.     NSMutableArray *marray = [NSMutableArray arrayWithArray:sortedArr];
  3.    
  4.     NSUInteger len = marray.count;
  5.    
  6.     for (int i =0; i<len; i++) {
  7.         for (int j = i+1; j<len; j++) {
  8.             if (marray[i]>marray[j]) {
  9.                 [marray  exchangeObjectAtIndex:i withObjectAtIndex:j];
  10.             }
  11.         }
  12.     }
  13.     NSLog(@"%@",marray);
  14.    
  15.     // 利用block来进行排序
  16.    
  17.     NSArray *sortArray = [marray sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {
  18.         
  19.         
  20.         if ([obj1 integerValue]<[obj2 integerValue]) {
  21.             return NSOrderedAscending;
  22.         }
  23.         
  24.         
  25.         return NSOrderedSame;
  26.     }];
  27.    
  28.     NSLog(@"%@",sortArray);
  29.    
  30.    
  31.     // 利用系统函数正序排序
  32.     NSArray *sort = [marray sortedArrayUsingSelector:@selector(compare:)];
  33.     NSLog(@"正序排序\n%@",sort);
  34.     // 倒序排序
  35.     NSEnumerator *e = [sort reverseObjectEnumerator];
  36.    
  37.     NSLog(@"倒序排序\n%@",[e allObjects]);
复制代码



作者: 0o小迷糊o0    时间: 2014-9-14 08:17
给你几个例子你可以看看
作者: 此生逍遥    时间: 2014-9-14 18:33
看视频都有的
作者: 徐闯楠    时间: 2014-9-14 21:00
看视频上有




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2