微胖小生

导航

 


字典是无序的  数组是有序的
字典分为:可变字典和不可变字典
01    --------不可变字典对象
02    NSDictionary * dict = [[NSDictionary alloc]initWithObjectsAndKeys:@"one",@"1",@"two",@"2",@"three",@"3",@"four",@"4", nil];
03        //value = key
04        //初始化必须一一对应  字典的内容是键值对   key->value  内容可以是任意的对象指针
05        //key   一般是NSString *   value   可以是任意对象
06        //不能出现重复的key    key是唯一的
07    
08    NSDictionary * dict1 = [NSDictionary dictionaryWithDictionary:dict];
09    
10    NSArray * values = [NSArray arrayWithObjects:@"one",@"two",@"three", nil];
11    NSArray * keys = [NSArray arrayWithObjects:@"1",@"2",@"3", nil];//key-value要一一对应
12    NSDictionary * dict2 = [[NSDictionary alloc]initWithObjects:values forKeys:keys];
13    
14    [dict count]//键值对的个数    键值对必须成对出现
15    [dict objectForKey:@"5"]//根据key找到对应的value
16    
17    //创建一个key的枚举器   把字典中key元素地址传给枚举器
18    NSEnumerator * enumer1 = [dict keyEnumerator];
19    id obj;
20    while (obj = [enumer1 nextObject]) {
21        NSLog(@"%@",[dict objectForKey:obj]);
22    }
23         
24    //创建值的枚举器(一般不使用,没有意义)
25    NSEnumerator * enumer2 = [dict objectEnumerator];
26    while (obj = [enumer2 nextObject]) {
27         NSLog(@"%@",obj);
28    }
29    //快速枚举 枚举的是key(不能改数据,只能读)
30    for(id key in dict){
31         NSLog(@"%@",key);
32    }
33    
34    NSArray * array = [urlItemDict allValues];//获取所有value
35    NSArray * array = [urlItemDict allKeys];//获取所有key------可变字典对象
1    ------可变字典对象
2    
3    NSMutableDictionary * dict = [[NSMutableDictionary alloc]initWithObjectsAndKeys:@"one",@"1",@"two",@"2",@"three",@"3",@"four",@"4", nil];
4             
5    [dict setObject:@"seven" forKey:@"7"];//增加键值对   key已经存在 则修改value        不存在则添加
6    [dict setObject:@"nine" forKey:@"1"];//修改value
7    [dict removeObjectForKey:@"1"];//删除键值对

posted on 2013-11-08 20:54  微胖小生  阅读(109)  评论(0编辑  收藏  举报