------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
1. NSDictionary介绍
NSDictionary是一个关键字及其描述的集合,是一个不可变的集合,一旦初始化完毕,里面的内容就无法改变。NSDictionary是一个无序集合。
2. NSDictionary的创建
//创建空字典
NSDictionary *dict1=[NSDictionary dictionary];
//创建只有一组键值的字典
NSDictionary *dict2=[NSDictionary dictionaryWithObject:@"zhangsan" forKey:@"zs"];
//创建有多组键值对的字典
NSDictionary *dict3=[NSDictionary dictionaryWithObjectsAndKeys:@"zhangsan",@"zs",@"lisi",@"ls",@"wangwu",@"ww", nil];
//快速创建一个字典
NSDictionary *dict4=@{@"zs":@"zhangsan",@"ls":@"lisi",@"ww":@"wangwu"};
3 NSDictionary的基本使用方法
<span style="white-space:pre"> </span>//返回字典中键值对的个数
NSUInteger count=[dict4 count];
//根据key值取出value值
NSString *str=[dict4 objectForKeyedSubscript:@"ls"]
//把字典保存到文件中
[dict4 writeToFile:@"users/xxxxx/dict.plist" atomically:YES];
//从文件中读取字典
NSDictionary *readDict=[NSDictionary dictionaryWithContentsOfFile:@"users/xxxxx/dict.plist"];
4. 字典的遍历
//字典的遍历
//1. for循环的增强使用,根据key值获取value值
for (NSString *str in dict4) {
NSLog(@"key=%@,value=%@",str,[dict4 objectForKey:str]);
}
//2. 使用block方式遍历字典
[dict4 enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
NSLog(@"key=%@,value=%@",key,obj);
}];
5. 键值对集合的特点
- 字典存储的时候,必须是“键值对”的方式来存储
- 键值对中存储的数据是无序的
- 键值对集合可以根据键,快速获取数据