//初始化
NSString *key1 = @"key1";
NSString *key2 = @"key2";
NSString *key3 = @"key3";
NSString *key4 = @"key4";
NSString *key5 = @"key5";
NSString *value1 = @"value1";
NSString *value2 = @"value2";
NSString *value3 = @"value3";
NSString *value4 = @"value4";
NSString *value5 = @"value5";
NSDictionary *dic1 = [NSDictionary dictionaryWithObject:value1 forKey:key1];
NSDictionary *dic2 = [NSDictionary dictionaryWithObjectsAndKeys:value1,key1,value2,key2, nil];
NSDictionary *dic3 = [NSDictionary dictionaryWithDictionary:dic2];
NSDictionary *dic4 = [NSDictionary dictionaryWithObjectsAndKeys:value3,key3,value4,key4,value5,key5, nil];
NSLog(@"dic1 = %@",dic1);
NSLog(@"dic2 = %@",dic2);
NSLog(@"dic3 = %@",dic3); //获取字典数量
int size = [dic3 count];
NSLog(@"dic3 size is %d",size); //获取value
NSString *value = [dic3 objectForKey:key1];
NSLog(@"dic3 value1 is %@",value); //获取所有的key和value
NSArray *allKeys = [dic3 allKeys];
NSArray *allValues = [dic3 allValues];
NSLog(@"allKeys = %@",allKeys);
NSLog(@"allValues = %@",allValues); //遍历字典
for (NSString *key in dic3) {
NSLog(@"dic3 key is %@, value is %@",key,[dic3 objectForKey:key]);
} //--------------------------NSMutableDictionary 可变字典 -------------------------------------
//初始化
NSMutableDictionary *mDic1 = [NSMutableDictionary dictionaryWithDictionary:dic3];
NSLog(@"mDic1 = %@",mDic1); //添加、修改、删除元素
[mDic1 setValue:value3 forKey:key3];
[mDic1 setObject:value4 forKey:key4];
[mDic1 setValue:@"value333" forKey:key3];
NSLog(@"mDic1 = %@",mDic1);
[mDic1 addEntriesFromDictionary:dic4];
NSLog(@"mDic1 = %@",mDic1); [mDic1 removeObjectForKey:key3];
[mDic1 removeObjectForKey:key4];
[mDic1 removeObjectForKey:key5];
NSLog(@"mDic = %@",mDic1);
[mDic1 addEntriesFromDictionary:dic4];
NSLog(@"mDic = %@",mDic1); //判断是否含有某个key
BOOL b1 = [[mDic1 allKeys] containsObject:key5];
NSLog(@"b1 = %d",b1);

  

OC——NSDictionary和NSMutableDictionary的更多相关文章

  1. 字典NSDictionary以及NSMutableDictionary的用法总结

    做过Java语言 或者 C语言 开发的朋友应该很清楚 关键字map 吧,它可以将数据以键值对儿的形式储存起来,取值的时候通过KEY就可以直接拿到对应的值,非常方便.在Objective-C语言中 词典 ...

  2. OC NSDictionary

    OC NSDictionary NSDictionary初始化 NSDictionary * dict = [[NSDictionary alloc] initWithObjectsAndKeys:@ ...

  3. 词典对象 NSDictionary与NSMutableDictionary

    做过Java语言或者 C语言开发的朋友应该很清楚关键字map 吧,它可以将数据以键值对儿的形式储存起来,取值的时候通过KEY就可以直接拿到对应的值,非常方便,是一种非常常用的数据结构.在Objecti ...

  4. (转载)目前最细致清晰的NSDictionary以及NSMutableDictionary用法总结

    文章转载自:http://www.cnblogs.com/wengzilin/archive/2012/03/15/2397712.html 做过Java语言 或者 C语言 开发的朋友应该很清楚 关键 ...

  5. 【转】目前最细致清晰的NSDictionary以及NSMutableDictionary用法总结 -- 不错

    原文网址:http://www.cnblogs.com/wengzilin/archive/2012/03/15/2397712.html 做过Java语言 或者 C语言 开发的朋友应该很清楚 关键字 ...

  6. 黑马程序员-NSDictionary和NSMutableDictionary

    NSDictionary和NSMutableDictionary:通过key和value进行对应,进行存储元素,能够方便提取所需的元素.key是不能够重复出现,但是value能够重复出现.NSDict ...

  7. NSDictionary、NSMutableDictionary的基本用法

    NSDictionary.NSMutableDictionary的基本用法 1.不可变词典NSDictionary 字典初始化 NSNumber *numObj = [NSNumber numberW ...

  8. Objective-C语法之NSDictionary和NSMutableDictionary

    Java 有Map,可以把数据以键值对的形式储存起来,取值的时候通过key就可以直接拿到对应的值,方便快捷.在Objective-C语言中,词典就是做这样的事情的,和NSArray一样,一个词典对象也 ...

  9. IOS Intro - NSDictionary and NSMutableDictionary

    NSDictionary.NSMutableDictionary的基本用法 1.不可变词典NSDictionary 字典初始化 NSNumber *numObj = [NSNumber numberW ...

随机推荐

  1. win7 AnkhSVN 安装报错

    重装系统后,需要安装AnkhSVN,结果一直报如下错误 An error occurred during the installation of assembly"Microsoft.VC8 ...

  2. System.Speech.Synthesis 添加暂停、继续功能

    为了方便调用暂停.继续的方法.要将speech的功能写成一个类.直接附上代码: using System; using System.Collections.Generic; using System ...

  3. Vim复制文件全部内容到系统剪贴板

    参考:http://vim.wikia.com/wiki/%22copy_all_to_clipboard%22_howto vim中有两个buffer为系统的剪贴板,它们为: * (primary ...

  4. css布局学习笔记之max-width

    设置块级元素的 width 可以阻止它从左到右撑满容器.然后你就可以设置左右外边距为 auto 来使其水平居中.元素会占据你所指定的宽度,然后剩余的宽度会一分为二成为左右外边距. div{ width ...

  5. Array类型(二)

    1.concat()方法可以基于当前数组中的所有项创建一个新数组. 先创建当前数组的一个副本,然后将接收到的参数添加到这个副本的末尾,最后返回新构建的数组. var colors = ["r ...

  6. PROCEDURE_监测系统_数据备份存储过程—备份原始数据,每十分钟一条,取平均值

    create or replace procedure proc_backup_originaldata(retCode out varchar2, -- 返回码                    ...

  7. vi打开二进制文件

    vi -b filename <c7><cc>><0b><00><00><01><01><c2>& ...

  8. python运维开发(二十四)----crm权限管理系统

    内容目录: 数据库设计 easyUI的使用 数据库设计 权限表Perssion 角色表Role 权限和角色关系表RoleToPermission 用户表UserInfo 用户和角色关系表UserInf ...

  9. 世纪大争论:Linux还是GNU/Linux?

    我们在网上已经习惯用“Linux”来称呼Linux操作系统了,然而,偶尔也用“GNU/Linux”来称呼和指代同样的操作系统和软件.同时人们也在争论这两种称呼哪个更合适. 本文将不会选边站队,仅力图向 ...

  10. 嵌入式系统USB CDROM虚拟光驱驱动程序开发

    带U盘功能的的USB接口设备已经越来越常见了.如果能够把产品说明书或者产品设备驱动程序做成一个USB CDROM,那该多方便.假设:你已经有了USB mass storage驱动.你的任务是在此基础上 ...