zoukankan      html  css  js  c++  java
  • iOS开发之数组排序

    1、数组按照指定关键字升序

    NSArray *sortedArray = [unSortedArray sortedArrayUsingComparator:^(id obj1,id obj2)
    {
      //升序,key表示比较的关键字
       if (obj1.key < obj1.key )
      {
         return NSOrderedAscending;
      }
      else
      {
         return NSOrderedDescending;
      }
    }

    2、数组按照指定关键字降序

    NSArray *sortedArray = [unSortedArray sortedArrayUsingComparator:^(id obj1,id obj2)
    {
      //降序,key表示比较的关键字
       if (obj1.key < obj1.key )
      {
         return NSOrderedDescending;
      }
      else
      {
         retur NSOrderedAscending;
      }
    }

    3、数组顺序全部翻转

    NSMutableArray *tempArray = [NSMutableArray arrayWithObjects:@"1",@"2",@"3",@"4",@"5",@"6",nil];
    NSArray *resultArray = [[tempArray reverseObjectEnumerator] allObjects];

    4、使用NSDescriptor排序

    单个关键字排序

    NSMutableArray *array = [NSMutableArray array];    
    NSSortDescriptor *sort = [NSSortDescriptor sortDescriptorWithKey:@"key" ascending:YES];
    [array sortUsingDescriptors:[NSArray arrayWithObject:sort]]; 

    多个关键字排序

    NSMutableArray *array = [NSMutableArray array];  
    NSSortDescriptor *sort1 = [NSSortDescriptor sortDescriptorWithKey:@"key1" ascending:YES];  
    NSSortDescriptor *sort2 = [NSSortDescriptor sortDescriptorWithKey:@"key2" ascending:NO]; 
    ......   
    [array sortUsingDescriptors:[NSArray arrayWithObjects:sort1, sort2, nil]];
  • 相关阅读:
    (8)设计模式-桥接模式
    (6)设计模式-原型模式
    (5)设计模式-原型模式
    hdu4714树形DP+贪心(乱搞)
    hdu1059(背包dp二进制优化)
    uva12558 Egyptian Fractions (HARD version)(迭代深搜)
    hdu4135 Co-prime【容斥原理】
    BZOJ 1509[NOI 2003]逃学的小孩 树形dp
    bzoj1812 [Ioi2005]riv
    bzoj 2243 [SDOI2011]染色(树链剖分+线段树合并)
  • 原文地址:https://www.cnblogs.com/hecanlin/p/10898676.html
Copyright © 2011-2022 走看看