字典(NSDictionary/NSMutableDictionary和集合(set)的总结

//首先字典是用于保存具有映射关系(key-value)的数据;

//与数组不同,数组靠下标存取数据集,数组的下标是唯一的,字典靠key存取元素,key值不能重复,value必须是对象。键值

对在字典中是无序存储的。

//首先是字典的创建

NSDictionary *dic = [NSDictionary dictionaryWithObject:@"12" forKey:@"xiaoming"];//使用便利构造器
    
NSDictionary *dic2 = [[NSDictionary alloc]initWithObjectsAndKeys:@"a",@"1",@"b",@"2",@"c",@"3", nil];

NSDictionary *dic4 = [NSDictionary dictionaryWithObject:@"a" forKey:@"1"];

//1.字典中元素的个数

NSInteger b = [dic2 count];

//2.通过key值获取字典里的value

NSString *str = [dic2 objectForKey:@"1"];

//3.获取所有的key值

NSArray *arr = [dic2 allKeys];

//4. 获取所有的value值

NSArray *arr1 = [dic2 allVAlues];

//可变字典  NSMutableDictionary

 NSMutableDictionary *mdic = [[NSMutableDictionary alloc]initWithObjectsAndKeys:@"a",@"1",@"b",@"2",@"c",@"3", nil];
 
 NSDictionary *dic1 = [[NSDictionary alloc]initWithObjectsAndKeys:@"d",@"4", nil]; 
 
 [mdic addEntriesFromDictionary:dic1];
 
 5.//对字典中得数值进行添加和移除
 
 [mdic setObject:@"e" forkey:@"5"];//字典中添加元素
 
 [mdic removeObjectForKey:@"4"];//通过键值移除字典中得元素;
 
 [mdic removeAllObjects]//移除字典中的所有元素
 
 //6.对字典中得元素重新赋值
 
 [dic setObject:@"sa" forKey:@"1"];
 
 //7.数组排序
 
NSArray *arr = [[NSArray alloc]initWithObjects:@"111",@"2",@"23",@"12",@"35", nil];
 
NSArray *arr1 = [arr sortedArrayUsingSelector:@selector(compare:)];//按字符串排序 compare 是字符串中得一个方法以选择排序进行排序
 
 ?* ?*  ?* ?*   ?* ?*  ?* ?*  ?* ?*  ?* ?*  ?* ?*  ?* ?*  ?* ?*  ?* ?*  ?* ?*  ?* 
 
 集合(NSSet 和 NSMutableSet)
 
 //8.首先是集合的初始化
 
 NSSet *set = [NSSet alloc]initWithObjects:@"1",@"2",@"3",@"4",@"5", nil]; 
 
 //9.集合中元素的个数
 
 NSInteger m = [set count];
 
 //10.将set中得所有值取出,放在数组中
 
 NSArray *arr = [set allObject];
 
 //11.返回集合中得任意一个元素,但基本上都是第一个
 
 NSString *c = [set anyObject];
 
 //12.判断set中是否包含这个数
 
 BOOL a = [set containsObject:@"2"];
 
 //13.判断两个set是否相等
 
 [set1 isequalToSet: set1]; 
 
 //14.可变集合的创建
 
  NSMutableSet *mset = [[NSMutableSet alloc]initWithObjects:@"1",@"2",@"3",@"4", nil]; 
  
 //15.可变集合增加元素和移除元素
 
 [mset addObject:@"5"];  [mset removeObject:@"1"];




转载于:https://my.oschina.net/u/2322034/blog/382259

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值