NSDictionary

// 创建字典对象
NSDictionary *dic = [[NSDictionary alloc]init];
NSDictionary *dic = [NSDictionary dictionary];
NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@”value”,@”key”,@”value”,@”4”,@”5”,nil];
NSLog(@”%@”, dic);

// key是唯一的,value可以重复
// key不能为空

NSLog(@”%ld”,dic.count); //当前有多少(keyValue)键值对
//NSLog(@”%@”,[dic objectForKey:@”4”]); //通过key找到对应的Value值
NSLog(@”%@”,dic[@”2”]); // 还可以这样写 dic[对应的key]

//获取字典所有的key和所有的value
NSLog(@”%@”,dic.allKeys);
NSLog(@”%@”,dic.allValues);

//可变的字典
NSMutableDictionary *dic = [NSMutableDictionary dictionary];
NSMutableDictionary *dicOne = [NSMutableDictionary dictionaryWithObjectsAndKey:@”1”,@”2”,@”3”,@”4”,@”5”,@”6”,nil ] ;
NSLog(@”%@”,dicOne.allKeys);
NSLog(@”%@”,dicOne.allValues);

for (NSInteger i = 0 ; i < dicOne.allkeys.count ; i++){
NSLog(@”%@”,dicOne.allValues[i]);
}

// for in 的前部分是字典里的key
for (NSString *str in dicOne) {
NSLog(@”%@”,dic[str]);
}

// 对可变的字典,当前的key不存在的时候,可以进行键值对的添加,当key存在,可以进行值的修改
[dic setObject:@”7” forkey:@”8”];
[dic setObject:@”100” forKey:@”8”];
NSLog(@”%@”,dic);

//移除键值对
[dic removeObjectForKey:@”8”];
NSLog(@”%@”,dic);
//全部移除
[dic removeAllObjects];
NSLog(@”%@”,dic);

//setObject是字典自己的方法,setValue是KVC的方法,即时效果一样,但以后要对字典进行操作,要用setObject
[dic setValue:@”100” forKey:@”nihao”];
NSLog(@”%@”,dic);

//字典里嵌套数组
NSArray *arrOne = @[@”1”,@”2”,@”3”,@”4”];
NSArray *arrTwo = @[@”5”,@”6”,@”7”,@”8”];

NSMutableDictionary *dic = [NSMutableDictionary dictionaryWithObjectsAndKeys:arrOne,@”arrOne”,arrTwo,@”arrTwo”,nil]; //将数组放入字典

//遍历
for (NSString *str in dic){ // in 前面放的是key
NSArrary *arr = dic[str]; //针对对应的key找到value,value是一个数组,所以用一个数组对象来接受
for (NSString *temp in arr){
NSLog(@”%@”,temp);
}
}

//数组里的对象是字典
NSDictionary *dicOne = [NSDictionary dictionaryWithObjectsAndKeys:@”孙悟空”, @”name”,@”19”,@”age”,nil];
NSDictionary *dicTwo = [NSDictionary dictionaryWithObjectsAndKeys:@”唐僧”,@”name”,@”20”,@”age”, nil];
NSDictionary dicThree = [NSDictionary dictionaryWithObjectAndKeys:@”猪八戒”,@”name”,@”18”,@”age”, nil];
NSArrary *arr = @[dicOne,dicTwo,dicThree];

for (NSDictionary *dic in arr) { //外层是数组遍历
for (NSString *key in dic){ //内存是字典遍历
NSLog(@”%@”,dic[key]);
}
}

NSDictionary *dicOne = [NSDictionary dictionaryWithObjectsAndKeys:@”孙悟空”,@”name”,@”19”,@”age”,nil];
NSDictionary *dicTwo =[NSDictionary dictionaryWithAndKeys:@”唐僧”,@”name”,@”20”,@”age”,nil];
NSDictionary * dicThree = [NSDictionary dictionaryWithObjectsAndKeys:@”猪八戒”,@”name”,@”18”,@”age”,nil];
NSArray *arr = @[dicOne,dicTwo,DicThree];
for (NSDictionary *dic in arr){ //外层是数组遍历
for (NSString *key in dic){ // 内层是字典遍历
NSLog(@”%@”, dic[key]);
}
}

NSDictionary *dicOne = [NSDictionary dictionaryWithObjectsAndKeys:@”孙悟空”,@”name”,@”19”,@”age”,nil];
NSDictionary *dicTwo = [NSDictionary dictionaryWithObjectsAndKeys:@”唐僧”,@”name”,@”20”,@”age”,nil];
NSDictionary *dicThree = [NSDictionary dictionaryWithObjectsAndKeys:@”猪八戒”,@”name”,@”18”,@”age”,nil];
NSArray *arrOne =@[dicOne,dicTwo];
NSArray *arrTwo = @[dicThree];
NSDictionary *bigDic = [NSDictionary dictionaryWithObjectsAndKeys:arrOne,@”arrOne”,arrow,@”arrow”,nil];
for (NSString *str in bigDic){
NSArray *arr = bigDic[str];
for (NSDictionary *dic in arr){
for (NSString *str in dic){
NSLog(@”%@”,dic[str]);
}
}
}

NSDictionary *dicOne = [NSDictionary dictionaryWithObjectsAndKeys:@”孙悟空”,@”name”,@”19”,@”age”,nil];
NSDictionary *dicTwo=[NSDictionary dictionaryWithObjectsAndKeys:@”唐僧”,@”name”,@”20”,@”age”,nil];
NSDictionary *dicThree=[NSDictionary dictionaryWithObjectsAndKeys:@”猪八戒”,@”name”,@”18”,@”age”,nil];
NSArray *arrOne = @[dicOne,dicTwo];
NSArray *arrTwo = @[dicThree];
NSDictionary *bigDic = [NSDictionary dictionaryWithObjectsAndKeys:arrOne,@”arrOne”,arrTow,@”arrow”,nil];
NSArray *bigArr =@[arrOne,arrTwo];
for (NSArray *arr in bigArr){
for (NSDictionary *dic in arr){
for (NSString *str in dic){
NSLog(@”%@”,dic[str]);
}
}
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值