【问题标题】:Order NSArray of Dictionaries - Objective c字典的顺序 NSArray - 目标 c
【发布时间】:2015-08-21 20:38:47
【问题描述】:

我有一个字典数组,看起来像这样

({order:1; name:foo},{order:0; name:bar}...)

我想通过“order”键订购这个NSArray的字典。

我知道我将不得不循环它,然后将它添加到一个新数组中,但我不太确定如何设置它?

感谢您的帮助

【问题讨论】:

    标签: ios objective-c arrays dictionary


    【解决方案1】:

    有几种可能的方法来做到这一点。

    这是一个:

    NSArray *unsortedArray = ... // your unsorted array of dictionaries
    NSSortDescriptor *sortBy = [NSSortDescriptor sortDescriptorWithKey:@"order" ascending:YES];
    NSArray *sorted = [unsortedArray sortedArrayUsingDescriptors:@[ sortBy ]];
    

    这是另一个:

    NSArray *unsortedArray = ... // your unsorted array of dictionaries
    NSArray *sorted = [unsortedArray sortedArrayUsingComparator:^NSComparisonResult(NSDictionary *dic1, NSDictionary *dic2) {
        NSNumber *order1 = dic1[@"order"];
        NSNumber *order2 = dic2[@"order"];
    
        return [order1 compare:order2];
    }];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-21
      • 2015-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-11
      • 1970-01-01
      相关资源
      最近更新 更多