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 键值对查找的更多相关文章

  1. php数组array,知道键名如何提取键值

    如果是知道键值,需要查找键名,直接使用array_search()即可.现在反过来,如何操作?   (1)array_walk_recursive()加自定义函数查找   $arr=array( 'n ...

  2. lua 使用递归查找键值

    function cc.exports.findValueByTbl(tbl,key)--递归方法,用于查找tbl中对应的键值 for k,v in pairs(tbl) do if k == key ...

  3. iOS - KVO 键值观察

    1.KVO KVO 是 Key-Value Observing 的简写,是键值观察的意思,属于 runtime 方法.Key Value Observing 顾名思义就是一种 observer 模式用 ...

  4. 路径(keyPath)、键值编码(KVC)和键值观察(KVO)

    键路径 在一个给定的实体中,同一个属性的所有值具有相同的数据类型. 键-值编码技术用于进行这样的查找—它是一种间接访问对象属性的机制. - 键路径是一个由用点作分隔符的键组成的字符串,用于指定一个连接 ...

  5. [深入浅出Cocoa]详解键值观察(KVO)及其实现机理

    一,前言 Objective-C 中的键(key)-值(value)观察(KVO)并不是什么新鲜事物,它来源于设计模式中的观察者模式,其基本思想就是: 一个目标对象管理所有依赖于它的观察者对象,并在它 ...

  6. ios中键值编码kvc和键值监听kvo的特性及详解

    总结: kvc键值编码  1.就是在oc中可以对属性进行动态读写(以往都是自己赋值属性)           2. 如果方法属性的关键字和需要数据中的关键字相同的话                  ...

  7. iOS监听模式系列之键值编码KVC、键值监听KVO的简单介绍和应用

    键值编码KVC 我们知道在C#中可以通过反射读写一个对象的属性,有时候这种方式特别方便,因为你可以利用字符串的方式去动态控制一个对象.其实由于ObjC的语言特性,你根部不必进行任何操作就可以进行属性的 ...

  8. KVO键值监听

    KVO 键值监听:当我想知道一个对象的属性是否发生改变的时候 做出响应,就需要添加监听keypath 和 key的区别keypath会自动寻找子类的属性key只会寻找当前类的属性添加键值监听[pers ...

  9. 键值编码 KVC

    http://www.cnblogs.com/dyf520/p/3805297.html 1,什么是Key-Value Coding? Key-Value Coding是一种间接访问对象属性的机制,使 ...

随机推荐

  1. Oracle bbed使用说明1

    一.centos上编译安装BBED工具 [orasrv@localhost ~]$ cd $ORACLE_HOME/rdbms/lib [orasrv@localhost ~]$ make -f in ...

  2. MySQL多实例-精典故障案例

    很久以前搭建过MySQL多实例,记得当时很顺利,呵呵!今天公司因为业务需要,我再一次搭建多实例.安装完MySQL后,初始化两个实例时,出现如下报错: 150915  1:10:36 [ERROR] C ...

  3. python 内置模块之hashlib、hmac、uuid

    一.hashlib md5和sha算法通过消息摘要算法生成定长的消息摘要,消息摘要算法是不可逆的.但同一段消息通过摘要算法后得到的值是一样的,可一通过比对消息摘要验证数据的完整性. sha算法比MD5 ...

  4. [Solved] install Gentoo in VBox: network interface eth0 does not exist

    ERROR:interface eth0 does not exist; ensure that you have loaded the correct kernel moudle for your ...

  5. java递归方法

    一个方法体内调用他自身,称为方法递归. 方法递归是一种隐式的循环,Tahiti重复执行某段代码,但这种重复执行无需循环控制 /* Author:oliver QIN DATE:2015-12-19 D ...

  6. 多实例MySQL批量添加用户和密码并授权

    OS:Cent OS 6.3 DB:5.5.14 如果一台服务器上有100个MySQL数据库实例,此时需要给不同端口的几个数据库添加用户名.密码并授权应用IP,一个个授权没问题,反正累的不是我,哇咔咔 ...

  7. boost安装

    虽然很多Boost组件都只有头文件,不需要编译,但是有些Boost组件,如program_options.regex等还是需要编译生成库的.考虑到目前的程序需要用到program_options.re ...

  8. 在IOS中使用json

    1.从https://github.com/stig/json-framework/中下载json框架:json-framework 2.解压下载的包,将class文件夹下的所有文件导入到当前工程下. ...

  9. 原型prototype -- 深入理解javascript

    /* 原型Prototype */ //一.原型 //原型使用一 var calculator = function (dlg, tax) { this.dlg = dlg; this.tax = t ...

  10. 在ubuntu16.04 下安装haproxy 1.5.11 做tcp负载均衡

    由于haproxy需要FQ下载,所以从csdn下载了较为新版的haproxy1.5.11,安装过程如下: 1. 解压haproxy-1.5.11.tar.gz : tar xzvf haproxy-1 ...