iOS开发——NSArray中的字典排序

Posted 乱七八糟21号

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS开发——NSArray中的字典排序相关的知识,希望对你有一定的参考价值。

  手头上碰到一个项目,需要给数组中的字典中的一个字段排序,想了想,干脆再字典中增加一个字段,用来记录需要排序字段的第一个字符,用它来作为比较的对象,进行排序。

- (void)viewDidLoad {

    [super viewDidLoad];

    

    NSArray *arr = @[@{@"sortKey":@"54"},@{@"sortKey":@"67"},@{@"sortKey":@"78"},@{@"sortKey":@"87"},@{@"sortKey":@"32"},@{@"sortKey":@"43"},@{@"sortKey":@""},@{@"sortKey":@"f"},@{@"sortKey":@"12"},@{@"sortKey":@"43"},@{@"sortKey":@"56"},@{@"sortKey":@"567"},@{@"sortKey":@"435"}];

 

    NSArray *sarr = [arr sortedArrayUsingFunction:compare context:NULL];

    NSLog(@"sarr:%@",sarr);

}

 

 

NSComparisonResult compare(NSDictionary *firstDict, NSDictionary *secondDict, void *context) {

    if ([[firstDict objectForKey:@"sortKey"] intValue] < [[secondDict objectForKey:@"sortKey"] intValue])

        return NSOrderedAscending;

    else if ([[firstDict objectForKey:@"sortKey"] intValue] > [[secondDict objectForKey:@"sortKey"] intValue])

        return NSOrderedDescending;

    else

        return NSOrderedSame;

}

以上是关于iOS开发——NSArray中的字典排序的主要内容,如果未能解决你的问题,请参考以下文章

IOS/Objective-C:按字符串中的单词数对 NSStrings 的 NSArray 进行排序

对数组中的字典进行排序

iOS开发-面试总结(十四)

在PHP中按数组键的值对字典中的数组进行排序

iOS 数组的去重(普通的无序的去重和排序好的去重)

iOS 数组的去重(普通的无序的去重和排序好的去重)