iOS开发之NSDictionary与NSMutableDictionary
来源:互联网 发布:女大十八变 知乎 编辑:程序博客网 时间:2024/06/11 11:03
NSDictionary不可变字词典
1、[NSDictionary dictionaryWithObjectsAndKeys:..]
: 使用键值对儿直接创建字典对象,结尾必需使用nil标志结束。
2、[NSDictionary initWithObjectsAndKeys:..]
:使用键值对儿初始化字典对象,结尾必需使用nil标志结束。
3、[dictionary count]
: 得到字典的长度单位。
4、[dictionary keyEnumerator]
: 将字典的所有KEY储存在NSEnumerator中,NSEnumerator很像Java语言中的迭代器,使用快速枚举可以遍历字典中所有储存KEY值。
5、[dictionary objectEnumerator]
: 将字典的所有value储存在NSEnumerator中,用法和上面差不多可用来遍历KEY对应储存的Value值。
6、[dictionary objectForKey:key]
: 通过传入KEY对象可以拿到当前KEY对应储存的值。
使用示例:
创建字典
NSDictionary *dic = [NSDictionary dictionaryWithObject:@"value" forKey:@"key"];
创建多个字典
NSDictionary *dic2 = [NSDictionary dictionaryWithObjectsAndKeys: @"xbyvalue1", @"xbykey1", @"xbyvalue2", @"xbykey2", @"xbyvalue3", @"xbykey3", @"xbyvalue4", @"xbykey4", nil];
根据现有的字典创建字典
NSDictionary *dic3 = [NSDictionary dictionaryWithDictionary:dic2];
根据key获取value
NSDictionary *dic =[dic3 objectForKey:@"key3"];
获取字典数量
NSInteger count = dic3.count;
所有的键集合
NSArray *keys = [dic3 allKeys];
所有值集合
NSArray *values = [dic3 allValues];
NSMutableDictionary可变字典
NSMutableDictionary 是NSDictionary的子类,所以继承了NSDictionary的方法。
1、[NSMutableDictionary dictionaryWithCapacity:5]
: 创建一个可变字典初始指定它的长度为5.,动态的添加数据如果超过5这个词典长度会自动增加,所以不用担心数组越界,推荐用这种方式。
2、[NSMutableDictionary initWithCapacity:5]
:只是初始化一个字典的长度为5。
3、[dictionary setObject:@"value" forKey:@"key"]
:向可变的字典动态的添加数据 。如果字典中存在这个KEY的数据则直接替换这个KEY的值。
4、[dictionary removeAllObjects..]
: 删除掉词典中的所有数据。
5、[dictionary removeObjectForKey..]
:删除掉词典中指定KEY的数据 。
使用示例
创建可变字典
NSMutableDictionary *mutableDic = [[NSMutableDictionary alloc]initWithObjectsAndKeys: @"xbyvalue1", @"xbykey1", @"xbyvalue2", @"xbykey2", @"xbyvalue3", @"xbykey3", @"xbyvalue4", @"xbykey4", nil];
添加现有的字典数据
[mutableDic addEntriesFromDictionary:dic3];
添加新的键值对象
[mutableDic setValue:@"set1" forKey:@"setKey1"];
以新的字典数据覆盖旧的字典数据
[mutableDic setDictionary:dic2];
根据key删除value
[mutableDic removeObjectForKey:@"key1"];
快速遍历
for(id key in mutableDic) { NSLog(@"key :%@ value :%@", key, [mutableDic objectForKey:key]);}
枚举遍历
NSEnumerator *enumerator = [mutableDic keyEnumerator];id key = [enumerator nextObject];while (key) { NSLog(@"enumerator :%@", [mutableDic objectForKey:key]); key = [enumerator nextObject];}
根据key数组删除元素
[mutableDic removeObjectsForKeys:keys];
删除所有元素
[mutableDic removeAllObjects];
- iOS开发之NSDictionary与NSMutableDictionary
- iOS集合之NSDictionary与NSMutableDictionary
- ios开发——NSDictionary与NSMutableDictionary相关
- 【IOS 开发学习总结-OC-31】★★OC之foundation 框架——字典(NSDictionary 与 NSMutableDictionary)
- ios之NSDictionary、NSMutableDictionary使用小结
- IOS学习之NSDictionary和NSMutableDictionary详解
- ios之NSDictionary、NSMutableDictionary使用小结
- ios之NSDictionary、NSMutableDictionary使用小结【转】
- ios NSDictionary\NSMutableDictionary
- IOS开发之旅-IOS常用数据结构NSArray、NSMutableArray、NSDictionary、NSMutableDictionary介绍
- NSDictionary与NSMutableDictionary
- IOS开发之OC篇(4)—— NSDictionary、NSMutableDictionary
- Objective-C ,ios,iphone开发基础:NSDictionary(字典) 和 NSMutableDictionary
- (转)IOS开发——NSDictionary以及NSMutableDictionary用法总结
- iOS开发-Day19-OC NSDictionary&NSMutableDictionary&NSSet&NSMutableSet
- IOS成长之路-NSDictionary和NSMutableDictionary例子微解
- IOS成长之路-NSDictionary和NSMutableDictionary例子微解
- IOS成长之路-NSDictionary和NSMutableDictionary例子微解
- nodejs学习笔记-nodejs的创建服务器(一)(http内置模块)
- CSS简单游戏代码(上机练习4)
- 广州智能服务机器人展览会 | 2016人工智能展
- flash builder 4.7安装以及破解
- Postgres 数据库字符集更改 ERROR: new encoding (UTF8) is incompatible
- iOS开发之NSDictionary与NSMutableDictionary
- 【机器学习】高斯过程python包安装过程
- 编程学习的网站收藏小集
- 金蝶KIS商贸版实现'条码标签打印'功能进行商品条码打印
- linux下socket编程实例
- android Camera 学习后续计划
- ART运行时Java堆创建过程分析
- android Canvas中的clipRect、drawBitmap
- HTML 4章 课后作业4