OC_经典笔记——字典的使用

上传人:飞*** 文档编号:47735550 上传时间:2018-07-04 格式:PDF 页数:4 大小:6.25KB
返回 下载 相关 举报
OC_经典笔记——字典的使用_第1页
第1页 / 共4页
OC_经典笔记——字典的使用_第2页
第2页 / 共4页
OC_经典笔记——字典的使用_第3页
第3页 / 共4页
OC_经典笔记——字典的使用_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《OC_经典笔记——字典的使用》由会员分享,可在线阅读,更多相关《OC_经典笔记——字典的使用(4页珍藏版)》请在金锄头文库上搜索。

1、CopyRight:zhangjianjun 2015 年 9 月 11 日 星期五1 字典的使用主题一、字典类1、字典类只能存储对象2、对象的数量和类型没有限制3、字典存储数据时是无序的,只能靠标签存储和查找4、字典中存储的内容:键值对key/value 二、NSDictionary 不可变字典类 1、+数字 等价于 = NSNumber numberWithInt:18 NSDictionary * dic = NSDictionary allocinitWithObjectsAndKeys:“yihuiyun“,“name“,“female“,“gender“,1 8,“age“, ni

2、l; NSLog(“%“, dic); (打印的结果 键值对之间使用 ;分隔,数组中使用 ,分隔。字典外面是靠 来 分隔,数组中是靠()进行分隔的); 2、字典中所有的 key 必须是唯一不重复的, value是可以存在重复现象的 3、NSString * name = dic objectForKey:“ name” ;(根据某个 key 访问字典中 的 value) NSLog(“%“, name); 如果在获取 value时使用的 key 不存在,返回 nil 用于判断字典中是否存储了某个对象4、获取字典中所有的key NSArray * key = dic allKeys; NSLog

3、(“ %“,key); 5、获取字典中所有的value NSArray * value = dic allValues; NSLog(“ %“,value); 6、遍历字典的方法之一: 遍历 allkeys ,通过遍历得到的key,从字典中获取对应的value for (int i =0; i key.count; i+) NSString * key1 = keyi; NSObject * value = dic objectForKey:key1; NSLog(“% %“,key1, value); CopyRight:zhangjianjun 2015 年 9 月 11 日 星期五2 方

4、法糖只适用于不可变的 三、可变字典类 1、NSMutableDictionary * dic = NSMutableDictionary dictionary;/遍历构 造器方法创建字典对象 2、 /添加对象,键值对 dic setObject:“yihuiyun“ forKey:“name“; dic setObject:“femal“ forKey:“gender“; dic setObject:18 forKey:“age“; setObject是针对可变数组进行的操作 3、 修改某个值和定义的方法是同一个 dic setObject:19 forKey:“age“; NSLog(“%“

5、,dic); 如果 key 已经存在,属于修改,如果key 不存在属于添加4、删除(移除) dic removeObjectForKey:“age“; NSLog(“%“,dic); dic removeAllObjects; NSLog(“ %“,dic); 实例演示:/ 场景 1: 创建字典存储一个学生的信息(姓名,学号) 场景 2: 创建数组存储三个学生,学生使用字典表示 NSDictionary * stuDic1 = NSDictionary dictionaryWithObjectsAndKeys: “yangyi“,“name“,1,“number“, nil; NSDictio

6、nary * stuDic2 = NSDictionary dictionaryWithObjectsAndKeys: “huge“,“name“,2,“number“, nil; NSDictionary * stuDic3 = NSDictionary dictionaryWithObjectsAndKeys :“ergou“,“name“,3,“number“, nil; dictionaryWithObjectsAndKeys 向字典中添加元素 NSArray * stuArray = NSArray arrayWithObjects:stuDic1,stuDic2,stuDic3,

7、nil; arrayWithObjects:向数组中添加对象NSLog(“ %“,stuArray); 场景 3:创建字典,存储一个班级的信息(班级名,所有学 生),学生还是使用字典表示CopyRight:zhangjianjun 2015 年 9 月 11 日 星期五3 className “BJS150833“; stuArray 数组对象(存储3 个学生,学生使用3 个字典) ; NSDictionary * classDic = NSDictionary dictionaryWithObjectsAndKeys :“BJS150833“,“className“,stuArra y,“s

8、tuArray“ ,nil; NSLog(“%“,classDic); 场景 4 创建数组存储两个班,每个班使用字典表示 第一个班已经创建完成,即classDic 创建第二个班 第一步创建班级内所有的学生 NSDictionary * stuDic21 = NSDictionary dictionaryWithObjectsAndKeys: “xiaowue“,“name“,21,“number“, nil; NSDictionary * stuDic22 = NSDictionary dictionaryWithObjectsAndKeys: “xiaoyi“,“name“,22,“numb

9、er“, nil; NSDictionary * stuDic23 = NSDictionary dictionaryWithObjectsAndKeys:“xuxu“,“name“,23,“number“, nil; 第二步创建数组存储所有的学生,数组用于存储在表示班 级的字典中NSArray * stuArray2 = stuDic21, stuDic22,stuDic23;/语法 糖 第三步创建表示班级的字典 NSDictionary * classDic2 = “className“: “ BJS1034” ,“ stuArray” :stuArray2; (语法糖) NSLog(“%

10、“,classDic2);NSArray * classArray = classDic,classDic2; NSLog(“%“, classArray); 场景 5:创建字典对象,表示学校:学校名、所有的班级 NSDictionary * schoolDic =“schoolName“: “lanou“,“classArray“: classArray; NSLog(“ %“,schoolDic); CopyRight:zhangjianjun 2015 年 9 月 11 日 星期五4 创建数组和字典都可以使用语法糖,但是语法糖创建 的是不可变的对象 使用字典管理数据的优势:可以使用 ke

11、y访问存储的数据7、快速遍历 for-可以对数组、字典、集进行所有元素的访 问8、1、快速遍历数组 NSArray * arr1 = “12“,“23“,“34“; for (NSString * obj in arr1) 在快速遍历循环的内部,obj 指向某个遍历到的对象 NSInteger a =arr1 indexOfObject:obj; / 获取数组元素的下标NSLog(“%lu %“,a,obj); 2、快速遍历字典 NSDictionary * dic = “name“: “yihuiyun“,“age“:14; /对字典进行快速遍历得到的是key for (NSString * key in dic) id value = dic objectForKey:key; id value = dickey; NSLog(“% %“,key, value); 在快速遍历时,不要增加、删除存储的数据 枚举 -列举

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号