zoukankan      html  css  js  c++  java
  • 关于按先后顺序、查找删除、以及for in 输出数组中的字典

    #define NSLog(FORMAT, ...) fprintf(stderr,"%s ",[[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);

    #import <Foundation/Foundation.h>

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

        @autoreleasepool {

                           NSDictionary *dic=@{@"class":@"IOS6",

                                @"name":@"wuduo",

                                @"age":@"21"

                                };

            NSDictionary *dic1=@{@"class":@"IOS8",

                                @"name":@"niuwei",

                                @"age":@"22"

                                };

            NSDictionary *dic2=@{@"class":@"IOS6",

                                @"name":@"zhijun",

                                @"age":@"23"

                                };

            NSDictionary *dic3=@{@"class":@"IOS8",

                                 @"name":@"zhongyuan",

                                 @"age":@"19"

                                 };

            NSDictionary *dic4=@{@"class":@"IOS6",

                                 @"name":@"junhao",

                                 @"age":@"24"

                                 };

            

            NSMutableArray *arr=[NSMutableArray array];

            [arr addObject:dic];

            [arr addObject:dic1];

            [arr addObject:dic2];

            [arr addObject:dic3];

            [arr addObject:dic4];

            

            

            

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

            {

                NSDictionary *dic=arr[i];

                //NSLog(@"姓名:%@,年龄:%@,身高:%@",[dic objectForKey:@"name"],[dic objectForKey:@"age"],[dic objectForKey:@"height"]);

                

                NSLog(@"班级:%@,姓名:%@,年龄:%@",dic[@"class"],dic[@"name"],dic[@"age"]);

            };

            NSLog(@" ");

            //按照班级进行排序,如果班级相同则按照年龄排序输出数据,格式同上

            NSSortDescriptor *sortByClass=[[NSSortDescriptor alloc]initWithKey:@"class" ascending:YES];

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

            NSArray *elementarrr=[NSArray arrayWithObjects:sortByAge,sortByClass, nil];

            NSArray *sortArray=[arr sortedArrayUsingDescriptors:elementarrr];

            

            for(NSDictionary *dic in sortArray )

            {

                NSLog(@"班级:%@,姓名:%@,年龄:%@",dic[@"class"],dic[@"name"],dic[@"age"])

            };

            

            NSLog(@" ");

            //删除wuduo此条数据,列出剩余数据,格式输出同上

            NSMutableArray *muarr=[NSMutableArray array];

            for(int j=0;j<arr.count;j++)

            {

                NSDictionary *dic6=arr[j];

                if(![[dic6 objectForKey:@"name"] isEqualToString:@"wuduo"])

                {

                    [muarr addObject:dic6];

                }

                

            };

            

            for(id d in muarr )

            {

                NSLog(@"班级:%@,姓名:%@,年龄:%@",d[@"class"],d[@"name"],d[@"age"])

            };

            

        

        }

        return 0;

    }

  • 相关阅读:
    Android 5.0 + IDA 6.8 调试经验分享
    UVA 10003
    欧拉项目010:2000000以内的素数和
    Intellij IDEA 配置Subversion插件
    Intellij IDEA 配置Subversion插件时效解决方法
    javascript 关键字不能作为变量来使用
    JavaScript 闭包(个人理解)
    启动IntelliJ IDEA 2016报错:cannot start under Java 1.7 : Java 1.8 or later is required 解决办法
    jquery easyui tree异步加载子节点
    10.2.1itools导入不了歌曲
  • 原文地址:https://www.cnblogs.com/wuduo/p/5121739.html
Copyright © 2011-2022 走看看