//初始化
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. Android adb不是内部或外部命令 (转)

    dos窗口运行adb命令出现错误:adb不是内部或外部命令…. 出现问题原因及解决办法: 1.没有配置相关环境变量. 只要将android 的sdk安装路径添加到系统变量Path中即可. (以win7 ...

  2. 简化工作——我的bat文件

    重启adb(radb.bat): @echo off call adb kill-server call adb start-server call adb remount push 一个apk(pu ...

  3. CSS 设计彻底研究(五)文字与图像

    第五章 文字与图像 5.1.2 设置字体 通过font-family属性设置字体.可以声明多种字体,字体之间用逗号分隔开.如一些字体名称中间有空格,需用双引号将其引起来,使浏览器知道这是一种字体的名称 ...

  4. java连接sqL2008 数据库实例

    package com.lzw; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSe ...

  5. POJ1275/ZOJ1420/HDU1529 Cashier Employment (差分约束)

    转载请注明出处: http://www.cnblogs.com/fraud/          ——by fraud 题意:一商店二十四小时营业,但每个时间段需求的出纳员不同,现有n个人申请这份工作, ...

  6. 从C到C++的升级

    C++的语言类型 C++是静态的强类型语言. 静态语言:数据类型在编译期间检查,因此在写程序时需要声明变量的类型 强类型语言:强调数据类型,不同的数据类型间的转换需要进行强制类型转换 C与C++的关系 ...

  7. (原)Eclipse中将JNI生成的so打包成jar的步骤

    说明:新人,对java不熟,见谅. 1. 新建工程,添加好native support,写好对应的文件(包括cpp文件,so文件和对应的java文件,此处称对应的java文件为SoJAR.java,) ...

  8. 在线添加磁盘,扩展LVM卷案例

    一.添加硬盘,在线扫描出来 首先到虚拟机那里添加一块硬盘,注意必须是SCSI类型的硬盘. 扫描硬盘,不用重启操作系统的. echo "- - -" > /sys/class/ ...

  9. js跨浏览器事件处理

    var EventUtil = { addHandler: function(element,type,handler){ if(element.addEventListener){ element. ...

  10. java poi 合并单元格后边框问题

    在项目中用poi合并单元格,但发现边框会有不显示的问题. 在网上搜集了答案,来记录一下. 解决方法: 将每个没用到的单元格都设空值. 例如: HSSFCell cell = row.createCel ...