【问题标题】:How can i sort the NSMutableArray in iPhone sdk [duplicate]如何在 iPhone sdk 中对 NSMutableArray 进行排序 [重复]
【发布时间】:2012-08-05 14:56:25
【问题描述】:

可能重复:
How to sort NSMutableArray in objective c

我想对包含值的 NSMutablearray 进行排序 434,34,4,45

我正在使用此代码进行排序:

[arrayfinale sortUsingSelector:@selector(compare:)];

但它会返回:

45,4,34,433

但我想要

4,34,45,433

谁能帮我解决这个问题

【问题讨论】:

    标签: iphone ios xcode ios4


    【解决方案1】:

    使用以下代码

       NSArray *unsortedArray = [NSArray arrayWithObjects:@"60", @"4", @"60", @"50", @"12", @"10", @"1", nil];
       NSArray *sortedArray = [unsortedArray sortedArrayUsingComparator:^(id firstObject, id secondObject) {
       return [((NSString *)firstObject) compare:((NSString *)secondObject) options:NSNumericSearch]; }];
       NSLog(@"Array is ::%@",sortedArray);
    

    【讨论】:

      【解决方案2】:

      来自apple's documentation

      NSArray *sortedArray = [array sortedArrayUsingComparator: ^(id obj1, id obj2) {
      
          if ([obj1 integerValue] > [obj2 integerValue]) {
              return (NSComparisonResult)NSOrderedDescending;
          }
      
          if ([obj1 integerValue] < [obj2 integerValue]) {
              return (NSComparisonResult)NSOrderedAscending;
          }
          return (NSComparisonResult)NSOrderedSame;
      }];
      

      【讨论】:

      • @thanx john 工作正常
      • 对我很有帮助非常非常感谢你
      • 但是 NSMutableArray 呢?如何排序?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-01
      • 2012-01-17
      • 2016-05-17
      • 1970-01-01
      • 1970-01-01
      • 2012-05-15
      • 2015-08-20
      相关资源
      最近更新 更多