博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OC中的字典
阅读量:6643 次
发布时间:2019-06-25

本文共 2170 字,大约阅读时间需要 7 分钟。

 /******* NS Dictionary ********

        

        //创建字典的方式:

//        NSDictionary *dic1=[[NSDictionary alloc]init];

//        NSDictionary *dic2=[NSDictionary dictionary];//创建可变空字典;

        

        NSDictionary *dictionary1=[NSDictionary dictionaryWithObject:@"Value" forKey:@"key"];

        NSLog(@"dictionary1:%@",dictionary1);

        

        NSDictionary *dictionary2=[[NSDictionary alloc]initWithObjects:@[@"V1",@"V2",@"V3"] forKeys:@[@"k1",@"k2",@"k3"]];

        NSLog(@"dictionary2:%@",dictionary2);

        

        NSDictionary *dictionary3=[NSDictionary dictionaryWithObjectsAndKeys:@"V1",@"k1",@"V2",@"k2", nil];

        NSLog(@"dictionary3%@",dictionary3);  //必须是一一对应

        

        //自己封装一个包涵从学生信息的字典

        NSString *stu_name=@"Tom";

        NSArray *stu_score=@[@90,@100,@80];

        NSArray *valueArray=@[@20,stu_name,stu_score];

        

        

        

        NSDictionary *stuDic=[NSDictionary dictionaryWithObjects:valueArray forKeys:@[@"age",@"name",@"score",]];

        NSLog(@"%@",stuDic);

        

        

        //根据已有字典创建新的字典

        

        NSDictionary *dictionary4=[NSDictionary dictionaryWithDictionary:dictionary3];

        NSLog(@"dictionary4%@",dictionary4);

        

        //获取字典中所有元素(键值对)的个数

        NSLog(@"dictionary4.count=%ld",dictionary4.count);

        

//        根据key值去获取value值

        NSString *value1=[dictionary4 valueForKey:@"k1"];

        NSLog(@"%@",value1);

        

        NSArray *value_array=[stuDic valueForKey:@"score"];

        NSLog(@"%@",value_array);

        

        

        //获取字典中所有的key

        NSArray *keyArray=[dictionary4 allKeys];

        NSArray *value_Array=[stuDic allValues];

        NSLog(@"%@%@",keyArray,value_Array);

        

        

        /********** NSMutableDictionary  **********

        

        NSMutableDictionary *mutableDic1=[NSMutableDictionary dictionaryWithObjects:@[@"V1",@"V2",@"V3"] forKeys:@[@"k1",@"k2",@"k3"]];

        

        //添加

        [mutableDic1 setObject:@"V4" forKey:@"k3"];//替换原来的值

        NSLog(@"%@",mutableDic1);

        //根据已经存在的字典添加

        [mutableDic1 addEntriesFromDictionary:dictionary4];

        NSLog(@"%@",mutableDic1);

        

        

        //修改

        //将当前字典所有元素替换成新的字典中的元素

        NSDictionary *dictionary=[NSDictionary dictionaryWithObjects:@[@"A",@"B"] forKeys:@[@"A1",@"B1"]];

        

        [mutableDic1 setDictionary:dictionary];

        NSLog(@"%@",mutableDic1);

        

        //指定key值修改

        [mutableDic1 setObject:@"newA" forKey:@"A1"];

        NSLog(@"%@",mutableDic1);

        

        

//        删除

        

        [mutableDic1 removeObjectForKey:@"B1"];//指定key值删除

        [mutableDic1 removeObjectsForKeys:@[@"A1",@"B1"]];//指定多个key删除

        [mutableDic1 removeAllObjects];//删除所有

        

        

 

转载于:https://www.cnblogs.com/shuxiachahu123/p/4916698.html

你可能感兴趣的文章
SLF4J的使用
查看>>
爬取新闻列表
查看>>
HttpClientUtil 工具类 实现跨域请求数据
查看>>
S8-codelab02
查看>>
怎么看iOS human interface guidelines中的user control原则
查看>>
Mac OS10.11更新ruby,gem,安装cocoapods
查看>>
qhfl-6 购物车
查看>>
双十一错题集
查看>>
iframe中有ajax,设置iframe自适应高度
查看>>
Oracle配置网络服务
查看>>
usermod更改用户家目录
查看>>
CATALINA_BASE与CATALINA_HOME的区别
查看>>
简单的mvvm light 应用
查看>>
关于IE浏览器里修改元素style属性的问题
查看>>
什么是PT,PT和BT有什么不同?
查看>>
mac操作快捷键
查看>>
Ubuntu16.04安装RoboCup3D比赛的仿真平台
查看>>
Android重写getResources规避用户调整系统字体大小影响Android屏幕适配
查看>>
C#委托-事件示例
查看>>
3DES 加密 解密
查看>>