- 字典:又称键值对,通过一个key可以访问他的值
- 分类:NSDictionary不可变字典,NSMutableDictionary可变字典
- 备注:字典的key一般是 字符串,如 @”key”
- 备注:字典的值,必须是对象,不能是C语言的基本类型
- 备注:字典中的值也可以是字典,可以多级嵌套
- 备注:字典元素的访问,可以直接通过下标的形式访问
- 注意:字典中的键值对是无序的
//1.不可变字典的创建
NSDictionary *dic = @{@”key1”:@”value1”,@”key2”:@”value2”};
NSDictionary *dic2 = @{@”key1”:@”value3”,@”key2”:@”value4”};
/**
* 2.获取字典中元素的几种方法
*/
id obj = dic[@”key1”];//拿到key1对应的值
tring *str1 = dic[@”key1”];//或者你知道他的值是NSString类型
NSString *str2 = [dic objectForKey:@”key1”];//通过方法获取key1值
/**
* 3.字典中包含字典
*/
NSDictionary *dic3 = @{@”dic1”:dic,@”dic2”:dic2};
NSString *str3 = dic3[@”dic1”][@”key1”];//多级字典的获取值得方法
/**
* 4.从数组中拿出字典
* 从网络获取的数据很可能是数组,数组中存的可能是字典
*/
NSArray *arr = @[dic,dic2];//模拟网络数据,可能有很多个
for (NSDictionary *dd in arr)//使用快速枚举解析数组
{
NSLog(@”获取的字典是:%@”,dd);
NSString *str = dd[@”key1”];
NSLog(@”从字典中拿出的字符串是%@”,str);
}
/**
* 5.字典所有的key和value的获得
* 所有的keys和values构成的是一个数组
*/
NSArray *allKeys = [dic allKeys];//获得字典的所有的键
NSArray *allValues = [dic allValues];//获得字典中所有的值
/**
* 6.可变字典的用法
* NSMutableDictionary主要用于参数拼接
*/