美文网首页
【ios开发】数组排序:升序倒序以及以字典的key排序

【ios开发】数组排序:升序倒序以及以字典的key排序

作者: 我是孙小白 | 来源:发表于2018-11-26 14:34 被阅读93次

    其实不太有记笔记的习惯,工作这么多年了,也没写过什么技术博客。

    既然最近有了写简书的念头, 那就由小及大,一点点慢慢积累吧。

    这里的技术都只是一些细碎知识点, 可能平时用的时候突然想不起来要如何写,需要百度搜索,那么你可能就搜到了这篇文章。

    好了, 以下是正文
    ————————————————————————————————

    对于数组的排序, 其实是很常用的技能了,这里只是做一个总结:

    1、 数组里是对象以及字符串的排序

        // 先创建一个数组
        NSArray *result = @[@(3),@(4),@(2),@(1)];
        
        // 升序
        NSArray *asceResult = [result sortedArrayUsingComparator:^NSComparisonResult(id  _Nonnull obj1, id  _Nonnull obj2) {
            
            return [obj1 compare:obj2];
        }];
        
        // 降序
        NSArray *descResult = [result sortedArrayUsingComparator:^NSComparisonResult(id  _Nonnull obj1, id  _Nonnull obj2) {
            
            return [obj2 compare:obj1];
        }];
        
        NSLog(@"--升序:%@  ----降序:%@",asceResult,descResult);
    
    我们来看结果: image.png

    2、数组里是字典,要以某一个key来排序

       // 先创建一个数组
        NSArray *data = @[
                          @{@"xaxis" : @"14:00",@"unit" : @"℃"},
                          @{@"xaxis" : @"13:00",@"unit" : @"℃"},
                          @{@"xaxis" : @"12:00",@"unit" : @"℃"},
                          @{@"xaxis" : @"11:00",@"unit" : @"℃"},
                          @{@"xaxis" : @"10:00",@"unit" : @"℃"},
                          @{@"xaxis" : @"09:00",@"unit" : @"℃"},
                          ];
    
        // 升序
        NSMutableArray *array = [NSMutableArray arrayWithArray:data];
    
        NSSortDescriptor *priceDescriptor = [NSSortDescriptor
                                            sortDescriptorWithKey:@"xaxis"
                                            ascending:YES
                                            selector:@selector(compare:)];
    
        [array sortUsingDescriptors:@[priceDescriptor]];
        
        NSLog(@"--- array: %@", array);
    
    我们来查看结果: image.png

    以上,就是数组排序的相关内容了, 是不是很简单?

    相关文章

      网友评论

          本文标题:【ios开发】数组排序:升序倒序以及以字典的key排序

          本文链接:https://www.haomeiwen.com/subject/dirbqqtx.html