#import <Foundation/Foundation.h>

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

@autoreleasepool {

NSDictionary *dic1=@{@"name":@"小阳",

@"class":@"IOS8",

@"age":@"20"

};

NSDictionary *dic2=@{@"name":@"小红",

@"class":@"IOS8",

@"age":@"67"

};

NSDictionary *dic3=@{@"name":@"小丽",

@"class":@"IOS6",

@"age":@"12"

};

NSDictionary *dic4=@{@"name":@"小杨",

@"class":@"IOS8",

@"age":@"33"

};

NSDictionary *dic5=@{@"name":@"李俊威",

@"class":@"IOS6",

@"age":@"23"

};

NSDictionary *dic6=@{@"name":@"赵玉鑫",

@"class":@"IOS8",

@"age":@"9"

};

NSDictionary *dic7=@{@"name":@"胡旭阳",

@"class":@"IOS6",

@"age":@"20"

};

NSArray *arr=[[NSArray alloc]initWithObjects:dic1,dic2,dic3,dic4,dic5,dic6,dic7,nil];

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

NSLog(@"操作前数据????????????");

for (NSDictionary *dic in arr) {

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

}

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

NSMutableArray *muarr=[NSMutableArray array];

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

NSDictionary *dic=arr[i];

if ( ![ [dic objectForKey:@"name"] isEqual:@"小阳"]) {

[muarr addObject:dic];

}

}

NSLog(@"删除后数据????????????");

for (NSDictionary *dic in muarr) {

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

}

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

//NSSortDescriptor 指定用于对象数组排序的对象属性

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

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

NSArray *elementarr=[NSArray arrayWithObjects:ageWithSort,classWithSort, nil];

NSArray *sortArray=[arr sortedArrayUsingDescriptors:elementarr];

NSLog(@"排序后数据????????????");

for (NSDictionary *dic in sortArray) {

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

}

}

return 0;

}

转载于:https://www.cnblogs.com/xzz5211314/p/5113110.html

OC字典存入数组,输出数组中数据,并且删除小明一项,然后进行排序、现根据班级排序,班级相同的用年龄进行排序...相关推荐

  1. oc字典放入到数组里,根据字典里的属性排序(重点)

    #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { ...

  2. 在ASP.net 中对GridView中数据的删除、编辑等操作:

    一.进行删除操作 1首先在vs里面新建一个网站,添加GridView 工具,在GridView1的属性里面把AutoGenerateDeleteButton的属性该为true, 2然后再给GridVi ...

  3. mysql中关于表的删除和表中数据的删除

    1.删除表(drop属于DDL语句) 格式:drop table 表名 2.删除表中的数据(delete属于DML语句,truncate属于DDL语句) 第一种方式:delete from 表名 wh ...

  4. Python中面向对象封装案例——小明爱跑步、摆放家具

    文章目录 面向对象封装案例 目标 1. 封装 2. 小明爱跑步 2.1 小明爱跑步扩展 -- 小美也爱跑步 3. 摆放家具 3.1 创建家具 3.2 创建房间 3.3 添加家具 3.4 小结 面向对象 ...

  5. [LeetCode题解]从两个有序数组的并集中寻找第k小元素

    Given two sorted arrays A, B of size m and n respectively. Find the k-th smallest element in the uni ...

  6. Hive中数据倾斜和小文件过多的解决方案

    数据倾斜: 任务进度长时间维持在99%(或100%),查看任务监控页面,发现只有少量(1个或几个)reduce子任务未完成.因为其处理的数据量和其他reduce差异过大. 原因:某个reduce的数据 ...

  7. Excel删除重复数据java_合并Excel范围中的数据,删除空白和重复项

    这是一种方法 . CODE (TRIED AND TESTED) Option Explicit Sub Sample() Dim ws As Worksheet Dim LastRow As Lon ...

  8. 浅谈php输出数组的4种方法

    在之前的文章<PHP数组学习之一维数组如何创建和初始化(代码详解)>和<PHP数组学习之二维数组创建方法浅析>中我们通过代码实例介绍了一维数组和二维数组的定义方法,简单易懂. ...

  9. python列表数据排序_Python中,如何将列表中数据排序给列表排序?

    在程序中使用字典进行数据信息統计时由于字典是无序的所以打印字典时内容也是无序的.因此为了使统计得到的结果更方便查看需要进行排序.Python中字典的排序分为按"键"排序和按&quo ...

最新文章

  1. 咪咕盒子链接服务器失败_云服务器怎样备份数据库备份
  2. Log4j官方文档翻译(一、基本介绍)
  3. python冒泡排序算法时间复杂度为nlogn_Python版算法专题-1、冒泡排序
  4. python四舍五入round_四舍五入就用round( )?Python四舍五入的正确打开方式!
  5. C语言中用函数实现录入信息模块,C语言程序设计用函数实现模块化程序设计(73页)-原创力文档...
  6. spring源码阅读(1/4) - Bean生成
  7. python:使用Djangorestframework编写post和get接口
  8. 春节期间小游戏同时在线人数最高达2800万人/小时
  9. object取值_this的原理、函数的不同调用方式this取值、以及不同环境下this的取值、函数四种调用方法...
  10. mysql语句中多表查询_6.MySql中的SQL语句(五):多表查询
  11. 详解 HTTPS 移动端对称加密套件优
  12. poj 2996 Help Me with the Game 模拟
  13. soundpool android,Android SoundPool:再次播放停止的声音
  14. Maya 2011, GUI with Qt
  15. 实验项目1 置换密码
  16. 论文:轨迹路线生成算法
  17. Cannot connenct to relay host smtp.163.com (php邮件发送失败)
  18. C++常用 math 函数
  19. 关于使用Windows10系统,使用LR11录制app脚本的方法说明
  20. druid安装与案例

热门文章

  1. 哪里需要使用LoRa基站?介绍几个适合LoRa应用的行业
  2. 模电电路(部分合集)
  3. RHCSA 7.17
  4. React中遍历数组生成标签
  5. 怎么用计算机玩超级玛丽,玩家在《超级马里奥制造2》里做出了计算器 计算过程太神奇...
  6. python认证考试_Python入门习题(39)——CCF CSP认证考试真题:公共钥匙盒
  7. win软件使用---克隆虚拟机
  8. 人工智能和大数据技术,在内容安全领域,主要的应用场景是什么?
  9. 微信医院预约挂号小程序系统设计与实现
  10. 【LC中等】1867. 最大数量高于平均水平的订单