NSDictionary 键值对查找
NSDictionary *dic1=[NSDictionary dictionaryWithObjectsAndKeys: @"1",@"a", @"2",@"b", @"3",@"c", @"2",@"d", nil]; NSLog(@"%zi",[dic1 count]); //结果:4 NSLog(@"%@",[dic1 valueForKey:@"b"]);//根据键取得值,结果:2 NSLog(@"%@",dic1[@"b"]);//还可以这样读取,结果:2 NSLog(@"%@,%@",[dic1 allKeys],[dic1 allValues]);NSDictionary *dic1=[NSDictionary dictionaryWithObjectsAndKeys: @"1",@"a", @"2",@"b", @"3",@"c", @"2",@"d", nil]; NSLog(@"%zi",[dic1 count]); //结果:4 NSLog(@"%@",[dic1 valueForKey:@"b"]);//根据键取得值,结果:2 NSLog(@"%@",dic1[@"b"]);//还可以这样读取,结果:2 NSLog(@"%@,%@",[dic1 allKeys],[dic1 allValues]); NSLog(@"%@",[dic1 objectsForKeys:[NSArray arrayWithObjects:@"a",@"b",@"e","r", nil]notFoundMarker:@"not found"]);//后面一个参数notFoundMarker是如果找不到对应的key用NSMutableDictionary *dic=[NSMutableDictionary dictionaryWithObjectsAndKeys:@"1",@"a", @"2",@"b", @"3",@"c", @"2",@"d",nil]; //[dic removeObjectForKey:@"b"]; //NSLog(@"%@",dic); /*结果: { a = 1; c = 3; d = 2; } */ //[dic addEntriesFromDictionary:@{@"e":@"7",@"f":@"6"}]; //NSLog(@"%@",dic); /*结果: { a = 1; c = 3; d = 2; e = 7; f = 6; } */ //setValue:value forkey:key 如果key存在,修改value;否则添加 [dic setValue:@"5" forKey:@"a"]; [dic setValue:@"5" forKey:@"f"]; NSLog(@"%@",dic);NSDictionary 键值对查找的更多相关文章
- php数组array,知道键名如何提取键值
如果是知道键值,需要查找键名,直接使用array_search()即可.现在反过来,如何操作? (1)array_walk_recursive()加自定义函数查找 $arr=array( 'n ...
- lua 使用递归查找键值
function cc.exports.findValueByTbl(tbl,key)--递归方法,用于查找tbl中对应的键值 for k,v in pairs(tbl) do if k == key ...
- iOS - KVO 键值观察
1.KVO KVO 是 Key-Value Observing 的简写,是键值观察的意思,属于 runtime 方法.Key Value Observing 顾名思义就是一种 observer 模式用 ...
- 路径(keyPath)、键值编码(KVC)和键值观察(KVO)
键路径 在一个给定的实体中,同一个属性的所有值具有相同的数据类型. 键-值编码技术用于进行这样的查找—它是一种间接访问对象属性的机制. - 键路径是一个由用点作分隔符的键组成的字符串,用于指定一个连接 ...
- [深入浅出Cocoa]详解键值观察(KVO)及其实现机理
一,前言 Objective-C 中的键(key)-值(value)观察(KVO)并不是什么新鲜事物,它来源于设计模式中的观察者模式,其基本思想就是: 一个目标对象管理所有依赖于它的观察者对象,并在它 ...
- ios中键值编码kvc和键值监听kvo的特性及详解
总结: kvc键值编码 1.就是在oc中可以对属性进行动态读写(以往都是自己赋值属性) 2. 如果方法属性的关键字和需要数据中的关键字相同的话 ...
- iOS监听模式系列之键值编码KVC、键值监听KVO的简单介绍和应用
键值编码KVC 我们知道在C#中可以通过反射读写一个对象的属性,有时候这种方式特别方便,因为你可以利用字符串的方式去动态控制一个对象.其实由于ObjC的语言特性,你根部不必进行任何操作就可以进行属性的 ...
- KVO键值监听
KVO 键值监听:当我想知道一个对象的属性是否发生改变的时候 做出响应,就需要添加监听keypath 和 key的区别keypath会自动寻找子类的属性key只会寻找当前类的属性添加键值监听[pers ...
- 键值编码 KVC
http://www.cnblogs.com/dyf520/p/3805297.html 1,什么是Key-Value Coding? Key-Value Coding是一种间接访问对象属性的机制,使 ...
随机推荐
- thinkpad t440p 解决无线网卡驱动
$ wget https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1239578/+attachment/4057550/+files/rtl_9 ...
- 通过FTP将一个数据文件从A服务器下载到B服务器的整个过程
现在的环境如下: 服务器A :192.168.1.104 服务器B:192.168.1.138 需要将A服务器上的某个数据文件下载到B服务器上,传输方式为:FTP 那么,要怎么去实现呢? 首先,需要添 ...
- android连接本地tomcat服务器,报timeout
1.在eclipse环境下连接时,没有任何问题 2.直接将服务端发布到tomcat服务下,报timeout 3.查明原因: 3.1打开IE访问,一切正常,可以获取到数据,说明不是服务端的问题 3.2打 ...
- Mysql ubuntu下的安装卸载
删除 mysql sudo apt-get autoremove --purge mysql-server-5.0sudo apt-get remove mysql-serversudo apt-ge ...
- 【go】sdk + idea-plugin 开发工具安装
http://golang.org/doc/install/source 第一步:windows 安装 git第二步$ git clone https://go.googlesource.com/go ...
- 10大iOS开发者最喜爱的类库
该10大iOS开发者最喜爱的库由“iOS辅导团队”成员Marcelo Fabri组织投票选举而得,参与者包括开发者团队,iOS辅导团队以及行业嘉宾.每个团队都要根据以下规则选出五个最好的库:1)不能投 ...
- win2008修改最大远程桌面连接数
win2008修改最大远程桌面连接数 运行——gredit.msc——管理模板——windows组件——远程桌面服务——远程桌面回话主机——连接——限制连接的数量——修改为999999
- Javascript实例:求数组中最大、最小值及下标
题目:定义一个数组,并给出7个整数,求该数组中的最大值,及最大值下标,最小值及最小值下标.<script type="text/javascript">//定义一个数组 ...
- 面试问到:JDBC、hibernate、ibati
一.JDBC.Connection(连接) 优点:运行高效.快捷. 缺点:代码多.异常多.不支持跨平台. 二.ibatis 1.根据jdbc的基本建立连接. 2.通过anntation+xml.jav ...
- GNOME与KDE的战争
目录1 序言2 GNOME与KDE交替发展% M" O/ h% R( b f, ~7 W' n9 V, G3 GNOME获得商业公司的支持4 KDE3.5可实现半透明和阴影效果,界面华丽. ...