//字典:(关键字 值)
// NSArray *array = [NSArray array];//空数组
// NSDictionary *dictionary = [NSDictionary dictionary];//空字典
NSDictionary *my = [NSDictionary dictionaryWithObject:@"objective" forKey:@"key"];
NSLog(@"%@",my);
NSDictionary *to = [NSDictionary dictionaryWithObjectsAndKeys:@"",@"abc",@"",@"efg" ,nil];//创建包含多个值的字典
NSLog(@"%@",to);
NSDictionary *me = @{
@"a":@"",
@"b":@""
};
NSLog(@"%@,%li",me,me.count);
NSString *s = [me objectForKey:@"a"];//键值对应的对象
NSString *ss = me[@"b"];//跟数组差不多
NSLog(@"%@,%@",ss,s); // NSArray *keyArr = [me allKeys];
// for(NSString *key in keyArr)
// {
// NSLog(@"%@ = %@",key,me[key]);
// } NSDictionary *niubi = [NSDictionary dictionaryWithObjectsAndKeys:@"liyuanfang",@"direnjie",@"Moran ",@"fuermosi",@"kenanfushou",@"kenan" ,nil];//创建包含多个值的字典
NSArray *keyArr = [niubi allKeys];//取字典中的所有键值
for(NSString *key in keyArr)
{
NSLog(@"%@问%@这事你怎么看?",key,niubi[key]);
}
/**********************************************************************************/
//取出字典中所有的值
NSArray *valueArr = [me allValues];
NSLog(@"取字典中的所有键对应的值%@",valueArr); //字典既然存在,那么开发者肯定想到要方便的使用它
//然而就有了,可以独立取出键或值的方法:allKeys和allValues
//因为他们是数组属性,所以需要放到新建的数组对象中 //枚举器中OC语言中一个遍历的有效方法,
//应用时,一般先通过.....Enumerator获取枚举器,存放到其对应的类型NSEnumerator对象中
//这个对象会有一个自动向下遍历的方法nextObject
//先获取字典中key的枚举器,然后遍历该枚举器,获取key对应的值
NSEnumerator *e = [me keyEnumerator];
id obj;
while (obj = [e nextObject]) {
NSLog(@"%@ = %@",obj,me[obj]);
} //获取value对应的枚举器
NSEnumerator *a = [me objectEnumerator];
while(obj = [a nextObject])
{
NSLog(@"%@",obj);
} //键和对象列举块,stop代表遍历停止 [me enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) { NSLog(@"key=%@,value = %@",key,obj);
}];
可变字典
NSMutableDictionary *aa = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"a",@"",@"b",@"", nil];
//增
[aa setObject:@"c" forKey:@""];
NSLog(@"%@",aa);
[aa setValue:@"d" forKey:@""];
NSLog(@"%@",aa);
//减
[aa removeObjectForKey:@""];
NSLog(@"%@",aa);
[aa removeAllObjects];
NSLog(@"%@",aa);