iOS 字典方法汇总

NSDictionary的所有方法

           //什么是字典
            //字典是有索引的,每一个索引都对应一个内容
            //       key                    value
            //OC字典的核心就是key&value
        
        //NSDictionary NSMutableDictionary
        
        //NSDictionary
        //字典是无序的
        //alloc 创建
        NSDictionary *dic = [[NSDictionary alloc] initWithObjectsAndKeys:@"V1",@"K1", nil];
        //字典都是由一对对象组成的,这一对对象前者是value,后者是key,key是字符串,value是任意对象
        NSLog(@"%@",dic);
        //打印出来的字典由{}包围,{}里面是key = value的格式
        
        NSDictionary *dic1 = [[NSDictionary alloc] initWithDictionary:dic];
        
        //类方法 创建 key不要重复
        NSDictionary *dic2 = [NSDictionary dictionaryWithObjectsAndKeys:@"虾条",@"零食",@"面条",@"主食",@"手抓肉",@"炒菜",@"二锅头",@"饮料", nil];
        NSDictionary *dic3 = [NSDictionary dictionaryWithDictionary:dic2];
        
        //找到对应key的value
        //关键词是objectForKey:参数是key,返回值是对应key的value,value是什么类型的对象,返回值就是什么类型的返回值
        NSString *mainFood = [dic2 objectForKey:@"主食"];
        NSLog(@"%@",mainFood);
        
        NSString *drink = [dic2 objectForKey:@"饮料"];
        
        //遍历,遍历数组直接就遍历那些对象。字典遍历的时候不是value,遍历的是key
        NSArray *dicArr = [dic2 allKeys];//通过allKeys可以找到一个字典里面的所有的key,返回值是一个数组
        for(int i = 0;i<[dicArr count];i++)
        {
            NSLog(@"%@",[dicArr objectAtIndex:i]);
        }
        
        //练习,有一个字典@[@"a":@"A",@"b":@"B",@"c":@"C",@"d":@"D"]
        //先创建出来,
        //找到c这个key对应的value
        //遍历这个字典,查找是否有d这个key,如果有,打印他的value
        
        NSDictionary *charDic = [NSDictionary dictionaryWithObjectsAndKeys:@"A",@"a",@"B",@"b",@"C",@"c",@"D",@"d", nil];
        NSLog(@"%@",[charDic objectForKey:@"c"]);
        
        NSArray *charDicArr = [charDic allKeys];
        for(NSString *tempStr in charDicArr)
        {
            if([tempStr isEqualTo:@"d"])
            {
                NSLog(@"%@",[charDic objectForKey:tempStr]);
            }
            else
            {
                NSLog(@"这个不是");
            }
        }

4、NSMutableDictionary的所有方法

        //NSMutableDictionary
        //创建
        NSMutableDictionary *mutableDic = [NSMutableDictionary dictionaryWithCapacity:0];
        
        //增添加新的key和value
        [mutableDic setValue:@"china" forKey:@"country"];
        [mutableDic setValue:@"北京" forKey:@"province"];
        
        //删除
        [mutableDic removeObjectForKey:@"country"];
        
        [mutableDic removeAllObjects];
        
        //练习
        //建一个可变字典
        NSMutableDictionary *peopleDic = [NSMutableDictionary dictionaryWithCapacity:0];
        //set两个value&key(name:lucy,age:16)
        [peopleDic setObject:@"lucy" forKey:@"name"];
        [peopleDic setObject:@"16" forKey:@"age"];
        //根据age找到value
        NSLog(@"%@",[peopleDic objectForKey:@"age"]);
        //添加一个value&key(sex:female)
        [peopleDic setObject:@"female" forKey:@"sex"];
        //删除一个value&key(name)
        [peopleDic removeObjectForKey:@"name"];
        //全删
        [peopleDic removeAllObjects];
        
        //数组、字典里面的内容不光是字符串(NSString),而可能是所有的对象类型
        NSMutableArray *tableArr = [NSMutableArray arrayWithCapacity:0];
        for(int i = 0;i<5;i++)
        {
            NSDictionary *hereDic = [NSDictionary dictionaryWithObjectsAndKeys:[NSString stringWithFormat:@"age is %d",arc4random()%100],@"age",[NSString stringWithFormat:@"sex is %d",arc4random()%1],@"sex",[NSString stringWithFormat:@"height is %d",arc4random()%200],@"height", nil];
            [tableArr addObject:hereDic];
        }
        NSLog(@"%@",tableArr);
        NSLog(@"age is %@",[[tableArr objectAtIndex:1] objectForKey:@"age"]);
    }

 

转载于:https://my.oschina.net/jimolengsha/blog/686486

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值