• 1.11考核数组中有字典


    #import <Foundation/Foundation.h>

    int main(int argc, const char * argv[]) {

        @autoreleasepool {

            

            

            NSArray *arr3=@[@{@"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数组内。

             2.查找数组内"Steve Jobs"的数据并删除。

             3.按姓名首字母进行排序。

             4.按年龄进行升序排序,如果年龄相同则按性别进行排序。

             5.输出成绩大于或等于80分的学员信息。*/

            

            NSMutableArray*newarr3=[NSMutableArray arrayWithArray:arr3];

            NSDictionary*dic=[[NSDictionary alloc  ]initWithObjectsAndKeys:@"Philip Schiller",@"姓名",@"29",@"年龄",@"female",@"性别",@"70" ,@"分数",nil  ];

            NSLog(@"输出第一题");

              NSLog(@"姓名为%@年龄为%@性别为%@分数为%@",dic[@"姓名"],dic[@"年龄"],dic[@"性别"],dic[@"分数"]);

             //NSLog(@"第三题");

           // NSSortDescriptor *des=[[NSSortDescriptor alloc]initWithKey:@"name" ascending:YES ];

            //        NSArray*del=[NSArray arrayWithObjects:des, nil];

            //        NSArray*sortarr1=[newarr3 sortUsingDescriptors:del];

            //        NSLog(@"xing ming shu chu ");

            //        for (id str20 in sortarr1) {

            //            NSLog(@"姓名为%@年龄为%@性别为%@分数为%@",str20[@"姓名"],str20[@"年龄"],str20[@"性别"],str20[@"分数"]);

            //

            //        }

    //第二题

           NSMutableArray*ARR=[NSMutableArray  arrayWithObject:arr3];

            for (int i=0; i<ARR.count; i++) {

                if ([ARR[i][@"name"] isEqualToString:@"Steve Jobs"])  {

                    [ARR removeObject:ARR[i]];

                }

            }

            NSLog(@"删除后");

            for (id STR in ARR) {

                NSLog(@"姓名是%@年龄为%@性别为%@成绩为%@",STR[@"name"],STR[@"age"],STR[@"sex"],STR[@"score"]);

            }

            

    //        NSLog(@"第三题");

    //        NSArray *arrSort=[newarr3 sortedArrayUsingSelector:@selector(compare:)];

    //        for(id str in arrSort) {

    //            NSLog(@"姓名为%@年龄为%@性别为%@分数为%@",str[@"name"],str[@"age"],str[@"sex"],str[@"score"]);

    //        }

    //

             NSSortDescriptor *des=[[NSSortDescriptor alloc]initWithKey:@"name" ascending:YES ];

                    NSArray*del=[NSArray arrayWithObjects:des, nil];

                    NSArray*arrsort4=[newarr3 sortedArrayUsingDescriptors:del];

            NSLog(@"第三题");

                    for (id str20 in arrsort4) {

                        NSLog(@"姓名为%@年龄为%@性别为%@分数为%@",str20[@"name"],str20[@"age"],str20[@"sex"],str20[@"score"]);

                    }

            

           

        

            NSLog(@"第四题");

            NSComparator comp=^(id obj1 ,id obj2){

                int age1=[ obj1[@"age"]intValue ];

                int age2=[obj2[@"age"]intValue];

                if(age1==age2){

                    

                    return [obj1[@"sex"] compare:obj2[@"sex"]];

                    

                }

                if(age1<age2){

                    return  NSOrderedAscending;

                    

                }else if(age1>age2){

                    return NSOrderedDescending;

                    

                }else{

                    return  NSOrderedSame;

                    

                }

                

            };

    //        NSArray*arrsort2=[newarr3 sortedArrayUsingSelector:@selector(compare:)];

            NSSortDescriptor *des1=[[NSSortDescriptor alloc]initWithKey:@"age" ascending:YES ];

            NSArray*del1=[NSArray arrayWithObjects:des1, nil];

            NSArray*arrsort5=[newarr3 sortedArrayUsingDescriptors:del1];

            for ( id one in arrsort5) {

                NSLog(@"姓名为%@年龄为%@性别为%@分数为%@",one[@"name"],one[@"age"],one[@"sex"],one[@"score"]);

            }

            

            NSLog(@"第五题");

            for (id two in newarr3) {

                if ( [two [@"score"] intValue]>=80) {

                    NSLog(@"姓名为%@年龄为%@性别为%@分数为%@",two[@"name"],two[@"age"],two[@"sex"],two[@"score"]);

                }

            

            }

        }

        return 0;

    }

  • 相关阅读:
    hadoop的live node为0
    python其中一个子线程,则退出全部线程,再退出进程
    hbase安装
    hive安装
    手游设备ID
    C++对C的改进(1)
    C++析构函数
    C++构造函数
    Linux0.11内核剖析--内核代码(kernel)--sched.c
    MIME简介
  • 原文地址:https://www.cnblogs.com/xzz5211314/p/5121692.html
Copyright © 2020-2023  润新知