oc之NSSortDescriptor(描述器排序)

摘要:
(描述器)1intmain{2@autoreleasepool{3NSDictionary*dic1=@{@"name":@"小阳",4@"class":@"IOS8",5@"age":@"24"6};7NSDictionary*dic2=@{@"name":@"小明",8@"class":@"IOS6",9@"age":@"67"10};11NSDictionary*dic3=@{@"name":@"小丽",12@"class":@"IOS8",13@"age":@"12"14};15NSDictionary*dic4=@{@"name":@"小杨",16@"class":@"IOS6",17@"age":@"33"18};1920//1.将以上四个字典存入数组中,输出数据以班级:XXX,姓名:XXX,年龄:XX格式。

1.将以上四个字典存入数组中,输出数据以班级:XXX,姓名:XXX,年龄:XX格式。

2.删除小明此条数据,列出剩余数据,输出格式同上。

3.按照班级进行排序,如果班级相同则按照年龄排序输出数据,格式同上。(描述器)

1 int main(int argc, const char *argv[]) {
2 @autoreleasepool {
3         NSDictionary *dic1=@{@"name":@"小阳",
4                              @"class":@"IOS8",
5                              @"age":@"24"
6 };
7         NSDictionary *dic2=@{@"name":@"小明",
8                              @"class":@"IOS6",
9                              @"age":@"67"
10 };
11         NSDictionary *dic3=@{@"name":@"小丽",
12                              @"class":@"IOS8",
13                              @"age":@"12"
14 };
15         NSDictionary *dic4=@{@"name":@"小杨",
16                              @"class":@"IOS6",
17                              @"age":@"33"
18 };
19         
20         //1.将以上四个字典存入数组中,输出数据以班级:XXX,姓名:XXX,年龄:XX格式。
21         
22         //2.删除小明此条数据,列出剩余数据,输出格式同上。
23         //3.按照班级进行排序,如果班级相同则按照年龄排序输出数据,格式同上。(描述器)
24         NSMutableArray *muarr=[NSMutableArray array];
25 [muarr addObject: dic1];
26 [muarr addObject: dic2];
27 [muarr addObject: dic3];
28 [muarr addObject: dic4];
29         
30         for(NSDictionary *dic inmuarr){
31             NSLog(@"班级:%@,姓名:%@,年龄:%@,",dic[@"class"],dic[@"name"],dic[@"age"]);
32 }
33         //[muarr removeObject:dic2];
34         for(int i=0;i<muarr.count;i++) {
35             NSDictionary *dic=muarr[i];
36             if([dic[@"name"] isEqual:@"小明"]){  //循环查找  如果找到小明就删除该数据
37 [muarr removeObject:dic];
38 }
39 }
40         
41         NSLog(@"删除后---------------------");
42         for(NSDictionary *dic inmuarr){
43             NSLog(@"班级:%@,姓名:%@,年龄:%@,",dic[@"class"],dic[@"name"],dic[@"age"]);
44 }
45         NSSortDescriptor *sotrs=[[NSSortDescriptor alloc]initWithKey:@"class"ascending:YES];
46         NSSortDescriptor *sorts1=[[NSSortDescriptor alloc]initWithKey:@"age"ascending:YES];
47 [muarr sortUsingDescriptors:[NSArray arrayWithObjects:sotrs,sorts1, nil]];
48         NSLog(@"排序后---------------------");
49         for(NSDictionary *dic inmuarr){
50             NSLog(@"班级:%@,姓名:%@,年龄:%@,",dic[@"class"],dic[@"name"],dic[@"age"]);
51 }
52         
53 }
54     return 0;
55 }

免责声明:文章转载自《oc之NSSortDescriptor(描述器排序)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇openwrt 的/etc/config/wireless 文件解析图文例解C++类的多重继承与虚拟继承下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

ios开发网络学习二:URL转码以及字典转模型框架MJExtension的使用

一:url转码,当url中涉及到中文的时候,要考虑转码,用UTF8对中文的url进行转码 #import "ViewController.h" @interfaceViewController () @end @implementationViewController #pragma mark ---------------------- #pra...

ios 保存本地数据的方法

1。 NSString *path = [[NSBundle mainBundle] pathForResource:@"文件名" ofType:@"plist"]; // 文件数据类型是array NSArray *array=[NSArray arrayWithContentsOfFile:path]; //文件数据类型是*dictionary NSD...

NSDictionary读取数据类型异常问题.

起因:做网络交互时,经常会使用JSON作为数据的承载体,本来是件好事,但是用多了,发现iOS侧偶尔会出现异常,几经比较发现是服务器给的数据有问题,该给INT的给按照STR给了,服务器能做动态更新,可客户端不行啊,怎么办?NSDictionary读到的是id类型,如果是数字,需要再转换下才可以,出问题就在这里.那解决思路就在这里,在这里增加判断实现用到了以下...

单一职责原则

单一职责原则 单一职责原则(Simple responsibility pinciple SRP) 就一个类而言,应该仅有一个引起它变化的原因,如果你能想到多于一个的动机去改变一个类,那么这个类就具有多于一个的职责。应该把多于的指责分离出去,分别再创建一些类来完成每一个职责。 单一职责原则是软件设计7大原则之一,其核心思想就是最大限度的提升代码的可复用性...

iOS NSDictionary 转Json 去掉换行去掉空格

//dic 转json 如果用系统自带的会出现空格。 + (NSString *)returnJSONStringWithDictionary:(NSDictionary *)dictionary{ //系统自带 // NSError * error; // NSData *...

iOS开发经验总结(上)

在iOS开发中经常需要使用的或不常用的知识点的总结,几年的收藏和积累(踩过的坑)。 一、 iPhone Size 手机型号 屏幕尺寸 iPhone 4 4s 320 * 480 iPhone 5 5s 320 * 568 iPhone 6 6s 375 * 667 iphone 6 plus 6s plus 414 *...