zoukankan      html  css  js  c++  java
  • 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;

    }

  • 相关阅读:
    js 实现商品放大镜效果
    Angular.js数据绑定时自动转义html标签及内容
    Sublime 快捷键一览表
    这么牛的简历,你见过么?
    正向代理与反向代理
    负载均衡
    redis搭建与安装
    svn服务配置和日常维护命令
    Mysql导出导入
    linux搭建svn服务器
  • 原文地址:https://www.cnblogs.com/xzz5211314/p/5121692.html
Copyright © 2011-2022 走看看