• 数组排序


     
    
     
    
    #import <Foundation/Foundation.h>
    
     
    
    int main(int argc, const char * argv[]) {
    
        @autoreleasepool {
    
            NSArray *arr=@[@{@"name":@"Tim Cook",@"age":@"24",@"sex":@"female",@"score":@"89"},@{@"name":@"Jony Ive",@"age":@"26",@"sex":@"female",@"score":@"76"},@{@"name":@"Steve Jobs",@"age":@"24",@"sex":@"male",@"score":@"67"},@{@"name":@"Robert Brunne",@"age":@"28",@"sex":@"male",@"score":@"88"}];
    
            
    
            /*
    
             1.添加数据姓名:Philip Schiller年龄:29性别:female分数:70到arr数组内。
    
             */
    
            NSMutableArray *newarr= [[NSMutableArray alloc]initWithArray:arr];
    
            NSDictionary *arr1=@{@"name":@"Philip Schiller",@"age":@"29",@"sex":@"female",@"score":@"70"};
    
            [newarr addObject:arr1];
    
            
    
            /* 2.查找数组内"Steve Jobs"的数据并删除。*/
    
            
    
            for (int i=0; i<[newarr count]; i++) {
    
                NSDictionary *dic=newarr[i];
    
     
    
                if ([dic[@"name"]isEqual:@"Steve Jobs"]) {
    
                    [newarr removeObject: dic];
    
                }
    
            }
    
     
    
            /*3.按姓名首字母进行排序。*/
    
            NSSortDescriptor *des=[NSSortDescriptor sortDescriptorWithKey:@"name" ascending:1];
    
            NSArray *arr2 =[newarr sortedArrayUsingDescriptors:[NSArray arrayWithObjects:des, nil]];
    
            for (NSDictionary *dic in arr2) {
    
            
    
                NSLog(@"%@ %@ %@ %@",dic[@"name"],dic[@"age"],dic[@"sex"],dic[@"score"]);
    
                
    
            }
    
            
    
            
    
             /*4.按年龄进行升序排序,如果年龄相同则按性别进行排序。*/
    
            NSSortDescriptor *des1=[NSSortDescriptor sortDescriptorWithKey:@"age" ascending:1];
    
            NSSortDescriptor *des4=[NSSortDescriptor sortDescriptorWithKey:@"sex" ascending:1];
    
            
    
            NSArray *arr3 =[newarr sortedArrayUsingDescriptors:[NSArray arrayWithObjects:des1,des4, nil]];
    
            for (NSDictionary *dic1 in arr3) {
    
               
    
                NSLog(@"%@ %@ %@ %@",dic1[@"name"],dic1[@"age"],dic1[@"sex"],dic1[@"score"]);
    
                
    
                
    
                
    
                
    
            }
    
       
    
            
    
             /*5.输出成绩大于或等于80分的学员信息。*/
    
            for (NSDictionary *dic3 in arr2) {
    
                int num=[dic3[@"score"] intValue];
    
                if (num>=80) {
    
                    NSLog(@"%@ %@ %@ %@",dic3[@"name"],dic3[@"age"],dic3[@"sex"],dic3[@"score"]);
    
     
    
                }
    
                
    
            }
    
     
    
        }
    
        return 0;
    
    }
  • 相关阅读:
    Redis网络连接库剖析
    如何下载和安装pywin32
    Python游戏开发入门:pygame事件处理机制
    python常见错误
    波特率与比特率
    __gcd最大公约数
    动态规划算法之矩阵连乘问题
    二分插入排序+二分搜索
    office 总结
    javaWeb总结
  • 原文地址:https://www.cnblogs.com/jun1994/p/5121640.html
Copyright © 2020-2023  润新知