您的位置:首页 > 其它

字典与集合类总结(最强王者组:王振波,胡鹏飞,孙晓萌,张西辉)

2014-08-08 22:16 435 查看
字典存在的价值:1.大容器,用来存储多个数据 2.用来存储的数据具有一一对应的关系,(使用key来标识value)  3.对于字典的一对键值对(key-value)叫做字典中的一个元素,也叫一个条目,只要使对象就可以,不限制类型  4.字典是无序的, 5.字典中的key是唯一的,一个key只能对应一个value ,一个value可以对应多个key
一.NSDictionary类的一些方法
1.创建字典对象
(1).便利构造器
NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"zhiyuan",@"name",@20,@"shenggao",@26,@"age" ,nil];
NSLog(@"%@",dic);
(2).初始化方法
NSDictionary *dic1 = [[NSDictionary alloc] initWithObjectsAndKeys:@"zhiyuan",@"name",@20,@"shenggao",@26,@"age" , nil];
NSLog(@"%@",dic1);
2.求字典元素个数
NSUInteger count = [dic1 count];
NSLog(@"%lu",count);
3.获取所有的key
NSArray *keys = [dic allKeys];
NSLog(@"%@",keys);
4.根据key获取对应的value
NSString *value = [dic objectForKey:@"name"];
NSLog(@"%@",value);
NSNumber * number = [dic objectForKey:@"age"];
NSLog(@"%@",number);
5.字典快速遍历
//快速遍历:对于数组来说,遍历到的是数组中的每一个元素,对于字典来说,遍历得到的是字典的key,然后通过key获取value
for ( NSString *key  in dic) {
//检索到key之后,通过objectForKey:获取key对应的value
NSLog(@"%@",[dic objectForKey:key]);
}
二.  NSMutableDictionary 类的一些方法
对于可变字典来说,比不可变字典多了增加,删除,修改操作
1.创建对象
NSMutableDictionary *dic = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"guang",@"gun",@"xiao",@"guan",@"shuai",@"gn", nil];
NSLog(@"%@",dic);
2.求字典的元素个数
NSLog(@"%lu",[dic count]);
3.删除元素
[dic removeObjectForKey:@"gun"];
NSLog(@"%@",dic);
[dic removeAllObjects];
NSLog(@"%@",dic);
4.添加元素
[dic setObject:@"xiaocui" forKey:@"gun"];
NSLog(@"%@",dic);

5.修改key对应的value
[dic setObject:@"chengjie" forKey:@"gun"];
NSLog(@"%@",dic);
//setObject:forKey:工作原理:先根据指定的key查找字典中是否存在相同的key.如果存在,则修改key对应的value,如果不存在,在字典中添加一个元素,key-value键值对.
三.NSSet 类的一些方法
1.创建集合对象
//便利构造器
NSSet *set1 = [NSSet setWithObjects:@"9",@"9",@"6",@"5", nil];
NSLog(@"%@",set1);
//初始化方法
NSSet *set2 = [[NSSet alloc] initWithObjects:@"1",@"2",@"6",@"5", nil];
NSLog(@"%@",set2);
2.获取元素个数
NSLog(@"%lu",[set1 count]);
3.获取集合中的某个元素
NSString *str =[set1 anyObject];
NSLog(@"%@",str);
NSString *str1 =[set1 anyObject];
NSLog(@"%@",str1);
NSString *str2 =[set1 anyObject];
NSLog(@"%@",str2);
NSString *str3 =[set1 anyObject];
NSLog(@"%@",str3);

4.判断集合中是否包含某个元素
BOOL isCon = [set1 containsObject:@"10"];
NSLog(@"%d",isCon);
}
四. NSMutableSet类的一些方法
//可变集合
NSMutableSet *set3 = [NSMutableSet setWithObjects:@"1",@"2",@"6",@"5", nil];
1.添加元素
[set3 addObject:@"9"];
NSLog(@"%@",set3);
2.移除元素
[set3 removeObject:@"2"];
NSLog(@"%@",set3);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: