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的问题

直接上代码:                NSDictionary *advicenumber=[arraycheck objectAtIndex:i];                NSLo...
  • houcuo2113
  • houcuo2113
  • 2016年12月29日 11:55
  • 252

iOS开发之NSDictionary与NSMutableDictionary

NSDictionary不可变字词典1、[NSDictionary dictionaryWithObjectsAndKeys:..]: 使用键值对儿直接创建字典对象,结尾必需使用nil标志结束。 2...
  • myinclude
  • myinclude
  • 2016年10月14日 17:07
  • 3536

NSDictionary&NSMutableDictionary常用操作梳理

NSDictionary&NSMutableDictionary也是继数组和字符串外高频使用的OC基本操作类,今天抽空将OC字典类常用操作稍作整理,以便需要时能条件反射信手拈来,避免需要某个utili...
  • phunxm
  • phunxm
  • 2015年07月26日 22:26
  • 9478

Objective-C中NSDictionary和NSMutableDictionary的基本用法

Objective-C中NSDictionary和NSMutableDictionary的基本用法
  • centralperk
  • centralperk
  • 2013年08月25日 22:25
  • 11752

iOS集合之NSDictionary与NSMutableDictionary

1、NSDictionary功能与用法 类方法与实例方法创建NSDictionary对象,类方法以dictionary开始,而实例方法则以init开头,下面是常见的方法: dictiona...
  • yuxikuo_1
  • yuxikuo_1
  • 2015年01月14日 14:05
  • 997

字典NSDictionary与可变字典NSmutableDictionary的用法

1、NSDictionary不可变字典——>子类NSMutableDictionary可变字典      :都是根据一个唯一的标示键来找到的对应的值。 字典  Key————>value 索引————...
  • u013087513
  • u013087513
  • 2015年08月22日 22:50
  • 1091

NSDictionary、NSMutableDictionary的基本用法

NSDictionary、NSMutableDictionary的基本用法 1.不可变词典NSDictionary (1)字典初始化 NSNumber *numObj = [NSNumb...
  • u012890196
  • u012890196
  • 2014年03月10日 10:06
  • 1714

NSDictionary与NSMutableDictionary的简单应用

NSDictionary类声为用于管理键值对的不可变联系的对象声明了程序设计的接口(用任意值来检索数据)。 NSDictionary用来创建静态字典,NSMutableDictionary则创建动态字...
  • LC__Dream
  • LC__Dream
  • 2016年01月05日 15:03
  • 436

NSArray与NSMutableArray的区别 NSDictionary与 NSMutableDictionary 的区别

NSArray与NSMutableArray的区别 在iOS 开发过程中, NSArray,NSMutableArray、NSDictionary、 NSMutableDictionary 经常被用...
  • danjianhu678
  • danjianhu678
  • 2012年04月01日 15:54
  • 694

NSArray和NSMutableArray,NSDictionary和NSMutableDictionary的常用方法

转载自:http://1058813598.diandian.com/post/2011-12-24/10271590 http://blog.sina.com.cn/s/blog_7b9d64...
  • harryptter
  • harryptter
  • 2014年11月19日 15:01
  • 789
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:NSDictionary、NSMutableDictionary的基本用法
举报原因:
原因补充:

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