首页 > 编程语言 > 详细

关于按先后顺序、查找删除、以及for in 输出数组中的字典

时间:2016-01-11 17:44:17      阅读:109      评论:0      收藏:0      [点我收藏+]

#define NSLog(FORMAT, ...) fprintf(stderr,"%s\n",[[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(@"\n");

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

        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(@"\n");

        //删除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;

}

关于按先后顺序、查找删除、以及for in 输出数组中的字典

原文:http://www.cnblogs.com/wuduo/p/5121739.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!