一:字典的基本概念
Foundation中的字典(NSDictionary,NSMutableDictionary)是由键-值对组成的数据集合.正如,我们在字典里查找单词的定义一样.
通过key(键),查找的对应的value(值),key通常是字符串对象,也可以是其他任意类型对象.在一个字典对象中,key的值必须是唯一的.
此外,字典对象的键和值不可以为空(nil),如果需要在字典中加入一个空值,可以加入NSNull对象
二:不可变字典-NSDictionary
1:初始化(以一个元素和多个元素进行初始化):
//以一个键值对象 进行初始化
NSDictionary *dict1=[NSDictionary dictionaryWithObject:@"number" forKey:@"key1"];
NSLog(@"%@", dict1);
//以多个元素进行初始化
NSDictionary *dict2=[NSDictionary dictionaryWithObjectsAndKeys:@"number", @"key1", @"number1",@"key2", nil]; NSLog(@"%@",dict2);
2:获取字典的数量
//获取字典的数量
NSInteger count=[dict2 count];
NSLog(@"%ld",count);
3:根据key获取相应的value对象
//根据key获取相应的value对象
4:把字典的key转换成枚举对象用于遍历NSString *value=[dict2 objectForKey:@"key1"]; NSLog(@"%@",value);
NSEnumerator *enumerator=[dict2 keyEnumerator];
5:获取所有的key集合
//获取所有的key集合
6:获取所有的value集合NSArray *keys= [dict2 allKeys]; NSLog(@"%@",keys);
//获取所有的value集合
三:可变字典NSMutableDictionary继承自NSDictionaryNSArray *values=[dict2 allValues]; NSLog(@"%@",values);
1:初始化字典
2:向字典中添加指定的字典//初始化字典 NSMutableDictionary *mutableDic=[[NSMutableDictionary alloc]initWithObjectsAndKeys:@"v1",@"k1",@"v2",@"k2",@"v3",@"k3",@"v4",@"k4",@"v5",@"k5", nil];
//向一个字典中添加一个字典
3:向字典中添加value和keyNSDictionary *dict4=[NSDictionary dictionaryWithObject:@"v6" forKey:@"k6"]; [mutableDic addEntriesFromDictionary:dict4]; NSLog(@"%@",mutableDic);
4:创建空的字典,然后设置新的一个字典//向字典中添加value和key [mutableDic setValue:@"object" forKey:@"key"];
5:删除指定key的value值//创建空的字典,然后设置新的一个字典,把会之前的字典全部覆盖掉 NSMutableDictionary *mutableDict2=[NSMutableDictionary dictionary]; [mutableDict2 setDictionary:mutableDic]; NSLog(@"%@",mutableDict2);
//移除指定key的value值
[mutableDict2 removeObjectForKey:@"k4"];
6:删除移除key集合的value值NSLog(@"%@",mutableDict2);
//删除一组key的value值
NSArray *arrayKeys=[NSArray arrayWithObjects:@"k1",@"k2",@"k3", nil];
[mutableDict2 removeObjectsForKeys:arrayKeys];
7:删除字典中所有的valueNSLog(@"%@",mutableDict2);
//删除字典中所有的数据
[mutableDict2 removeAllObjects];
NSLog(@"%@",mutableDict2);