// 字典 : 用来存储具有一一对应关系的数据 .
// 一个 key 对应一个 value key 起到了唯一标识作用 , key 必须是唯一的 , 但是一个 value 可以对应多个 key
// 存储的对象是无序的 , 一对键值对组成了字典中的一个元素
//NSDictionary
/*
//1. 创建对象
NSDictionary * dic = [[NSDictionary alloc] initWithObjectsAndKeys:@"lili", @"name", @"18", @"age", @"6222222", @"phone", @" 男 ", @"sex", nil];
NSLog(@"%@", dic);
NSDictionary * dic1 = [NSDictionary dictionaryWithObjectsAndKeys:@" 放弃 ", @"abandon",@" 一个 ", @"a", @" 下标 ", @"index", nil];
NSLog(@"%@", dic1);
//2. 求字典的元素个数
NSInteger count0 = [dic count];
NSInteger count1 = [dic1 count];
NSLog(@"%lu", count0);
NSLog(@"%lu", count1);
//3. 获取所有的 key
NSArray * keys = [dic allKeys];
NSLog(@"%@", keys);
//4. 根据 key 获取对应的 value
NSString * value = [dic objectForKey:@"name"];
NSLog(@"value = %@", value);
//5. 字典遍历
// 字典遍历获得到 key 然后根据 key 在获得相应的 value
for (NSString * key in dic) {
NSString * value1 = [dic objectForKey:key];
NSLog(@"!!!!!value1 = %@", value1);
}
//NSMutableDictionary
//1. 创建可变字典
NSMutableDictionary * mDic = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"lili", @"name", @"18", @"age", @"6222222", @"phone", @" 男 ", @"sex", nil];
//2. 往字典中添加元素
[mDic setObject:@"25" forKey:@"number"];
NSLog(@"%@", mDic);
//3. 修改 key 对应的 value
[mDic setObject:@"22" forKey:@"age"];
NSLog(@"3333%@", mDic);
//4. 移除
[mDic removeObjectForKey:@"phone"];
NSLog(@"4444%@", mDic);