NSDictionary、NSMutableDictionary的基本用法

转载 2015年07月11日 08:57:57

1.不可变词典NSDictionary

字典初始化

NSNumber *numObj = [NSNumber numberWithInt:100];

以一个元素初始化

NSDictionary *dic = [NSDictionary dictionaryWithObject:numObj forKey:@"key"];


初始化两个元素

NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:numObj, @"valueKey", numObj2, @"value2",nil];


初始化新字典,新字典包含otherDic

NSDictionary *dic = [NSDictionary dictionaryWithDictionary:otherDic];


以文件内容初始化字典

NSDictionary *dic = [NSDictionary dictionaryWithContentsOfFile:path];

常用方法

获取字典数量

NSInteger count = [dic count];


通过key获取对应的value对象

NSObject *valueObj = [dic objectForKey:@"key"];


将字典的key转成枚举对象,用于遍历

NSEnumerator *enumerator = [dic keyEnumerator];


获取所有键的集合

NSArray *keys = [dic allKeys];


获取所有值的集合

NSArray *values = [dic allValues];

2.可变数组NSMutableDictionary

初始化一个空的可变字典

NSMutableDictionary *dic2 = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"v1",@"key1",@"v2",@"key2",nil];

NSDictionary *dic3 = [NSDictionary dictionaryWithObject:@"v3" forKey:@"key3"];


向字典2对象中添加整个字典对象3

[dic2 addEntriesFromDictionary:dic3];

向字典2对象中最佳一个新的key3和value3

[dic2 setValue:@"value3" forKey:@"key3"];

初始化一个空的可变字典

NSMutableDictionary *dic1 = [NSMutableDictionary dictionary];

将空字典1对象内容设置与字典2对象相同

[dic1 setDictionary:dic2];

将字典中key1对应的值删除

[dic1 removeObjectForKey@"key1"];

NSArray *array = [NSArray arrayWithObjects:@"key1", nil];

根据指定的数组(key)移除字典1的内容

[dic2 removeObjectsForKeys:array];

移除字典所有对象

[dic1 removeAllObjects];

遍历字典

快速枚举

for (id key in dic){

     id obj = [dic objectForKey:key];

     NSLog(@"%@", obj);

}

一般枚举

NSArray *keys = [dic allKeys];
inr length = [keys count];
for (int i = 0; i < length;i++){
     id key = [keys objectAtIndex:i];
     id obj = [dic objectForKey:key];
     NSLog(@"%@", obj);
}

通过枚举类型枚举

NSEnumerator *enumerator = [dic keyEnumerator];
id key = [enumerator nextObject];
while (key) {
        id obj = [dic objectForKey:key];
        NSLog(@"%@", obj);
        key = [enumerator nextObject];
}



目前最细致清晰的NSDictionary以及NSMutableDictionary用法总结

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

目前最细致清晰的NSDictionary以及NSMutableDictionary用法总结

http://www.cnblogs.com/wengzilin/archive/2012/03/15/2397712.html 做过Java语言 或者 C语言 开发的朋友应该很清楚 关...
  • jeffasd
  • jeffasd
  • 2015年12月29日 16:22
  • 2618

Objective-C学习笔记(4)----NSDictionary以及NSMutableDictionary用法总结

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

NSDictionary以及NSMutableDictionary用法总结

1.NSDictionary创建不可变词典 [NSDictionary dictionaryWithObjectsAndKeys:..] : 使用键值对儿直接创建词典对象,结尾必需使用nil标志...

目前最细致清晰的NSDictionary以及NSMutableDictionary用法总结

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

NSArray与NSMutableArray的区别 NSDictionary以及NSMutableDictionary用法总结

NSArray与NSMutableArray的区别 分类: iOS2012-03-26 16:15 475人阅读 评论(0) 收藏 举报 在iOS 开发过程中, NSArr...

Objective-C------NSDictionary、NSMutableDictionary字典对象用法总结

//NSDictionary字典对象--不可变字典 /* 字典:由键-对象对组成的数据集合,可以是动态的,字典中的记录可以动态的添加和删除,可以用键检索词典或者枚举他们的内容 键:必须是单值,一般是字...

目前最细致清晰的NSDictionary以及NSMutableDictionary用法总结

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

【Objective-C】OC中字典基本概念和常用方法(NSDictionary和NSMutableDictionary)

一:字典的基本概念     Foundation中的字典(NSDictionary,NSMutableDictionary)是由键-值对组成的数据集合.正如,我们在字典里查找单词的定义一样. 通过...

NSDictionary、NSMutableDictionary的基本用法

NSDictionary、NSMutableDictionary的基本用法 1.不可变词典NSDictionary (1)字典初始化 NSNumber *numObj = [NSNumb...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:NSDictionary、NSMutableDictionary的基本用法
举报原因:
原因补充:

(最多只允许输入30个字)