OC中NSDictionary常用方法总结
//不可变字典NSDictionary
//字典的创建
NSDictionary *dic1=[NSDictionary dictionaryWithObject:@"velue" forKey:@"k1"];//一个键 一个值
NSDictionary *dic2=[NSDictionary dictionaryWithObjectsAndKeys:@"v1",@"k1",@"v2",@"k2",@"v3",@"k3",@"v4",@"k4",@"v5",@"k5",nil];//创建多个键 多个值
NSDictionary *dic3=[NSDictionary dictionaryWithDictionary:dic1];//直接把dic内容给dic3
NSLog(@"dic1:%@",dic1);
NSLog(@"dic2:%@",dic2);
NSLog(@"dic3:%@",dic3);
//获取字典的数量
int count=[dic2 count];
NSLog(@"%d",count);
//获取k3的value
NSString *string=[dic2 objectForKey:@"k3"];
NSLog(@"value:%@",string);
//获取字典中所有的key和value
NSArray *keyArray=[dic2 allKeys];
NSArray *valueArry=[dic2 allValues];
NSLog(@"keyArray:%@valueArry:%@",keyArray,valueArry);
//可变字典NSMutableDictionary
NSMutableDictionary *mutableDic1=[NSMutableDictionary dictionaryWithObjectsAndKeys:@"v1",@"k1",@"v2",@"k2",@"v3",@"k3",@"v4",@"k4",@"v5",@"k5", nil];
//上面是类方法直接赋值 下面是实例方法开辟空间并赋值
NSMutableDictionary *mutableDic=[[NSMutableDictionary alloc]initWithObjectsAndKeys:@"v1",@"k1",@"v2",@"k2",@"v3",@"k3",@"v4",@"k4",@"v5",@"k5", nil];
//将一个字典中的velue和key添加到另外一个字典中
NSDictionary *dic4=[NSDictionary dictionaryWithObject:@"v6" forKey:@"k6"];
[mutableDic addEntriesFromDictionary:dic4];
NSLog(@"MutableDic%@",mutableDic);
//向字典中添加新的velue和key
[mutableDic setValue:@"object" forKey:@"key"];
NSLog(@"%@",mutableDic);
//创建一个空的字典数组
NSMutableDictionary *mutableDic2=[NSMutableDictionary dictionary];
[mutableDic2 setDictionary:mutableDic];//
NSLog(@"dic2:%@",mutableDic2);
//通过制定key删除
[mutableDic2 removeObjectForKey:@"k4"];
NSLog(@"dic2:%@",mutableDic2);
//删除多个键值
NSArray *keys=[NSArray arrayWithObjects:@"k1",@"k2",@"k3", nil];
[mutableDic2 removeObjectsForKeys:keys];
NSLog(@"dic2:%@",mutableDic2);
//删除全部键值
// [mutableDic2 removeAllObjects];
// NSLog(@"dic2:%@",mutableDic2);
//遍历字典 一般的方法
for (int index=0;index<[mutableDic1 count]; index++) {
NSString *object=[mutableDic1 objectForKey:[[mutableDic1 allKeys]objectAtIndex:index]];
NSLog(@"object:%@",object);
}
//快速枚举
NSLog(@"____________________");
for (NSString *key in mutableDic1) {
NSString *object=[mutableDic1 objectForKey:key];
NSLog(@"object:%@",object);
}
NSLog(@"____________________");
//使用枚举类型
NSEnumerator *enumerator=[mutableDic1 keyEnumerator];
id key;
while(key=[enumerator nextObject]){
id object=[mutableDic1 objectForKey:key];
NSLog(@"object:%@",object);
}
OC中NSDictionary常用方法总结相关推荐
- OC中的NSArray和NSMutableArray、NSDictionary和NSMutableDictionary用法
一:NSArray 和NSMutableArray 1: NSArray:不可变数组 NSArray是OC中使用的数组,只能用来存放OC对象,不能存放非OC对象如基本数据类型 它使不可变的,一旦初始化 ...
- OC中的NSNumber、NSArray、NSString的常用方法
和C语言不同,在Objective-C语言中,有单独的字符串类NSString.C语言中,string是由 char(ASCLL码)字符组成 OC中,字符串是由unichar(Unicode)字符组成 ...
- OC中的字符串常用方法
OC中的字符串常用方法 OC中对字符串进行操作使用了Foundation框架中的NSString类(不可变).NSMutableString类(可变). NSString 1.创建字符串 [objc] ...
- iOS开发几年了,你清楚OC中的这些东西么!!!?
iOS开发几年了,你清楚OC中的这些东西么!!!? 前言 几年前笔者是使用Objective-C进行iOS开发, 不过在两年前Apple发布swift的时候,就开始了swift的学习, 在swift1 ...
- NSObject中的常用方法
//1.NSObjectPerson *xiaoming = [[Person alloc]init];SEL selector = @selector(eat);[xiaoming performS ...
- php字典遍历,OC中的遍历数组和字典
什么是遍历 ? 最近总有刚接触编程的朋友问我什么是遍历? 那是用来干什么用的? 今天就来解释一下遍历以及在OC中的具体用法 在众多计算机程序语言中,数组是必不可少的数据类型.而所谓遍历就是沿着某条搜索 ...
- OC中JSON解析与XML解析
文章目录 ###JSON JSON是一种轻量级的数据格式,一般用于数据交互: 服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件下载除外). JSON的格式很像OC中的字典和数组,标准 ...
- OC中常见面试题汇整篇
当页面跳转的时候,如何实现导航条和页面同时出现?因为他两个经常出现不同步的现象? 如何将tablview强制转换成UIScrollow? 当一个界面在6s上正好可以完全呈现,那在4s上面你是如何处理的 ...
- 6 OC 中的isa 指针
目录 一 isa 指针 二 类对象中的superclass 一 isa 指针 isa 指针 ,OC 中的对象都是有的 如下图所示,实例对象isa 指针指向 类对象,类对象的isa 指针指向 元类对象 ...
最新文章
- python join split
- 在studio中使用libsdl2.so,编译SDL Demo
- html5场景编辑工具,3款容易上手的HTML5编辑工具推荐~
- js获取checkbox多选表单
- GitChat专栏:Spring Cloud 与 Consul 的整合使用
- 大班体育游戏 电子计算机,【大班户外游戏】_幼儿园大班体育游戏活动设计40篇...
- python中的*和**参数:nn.Sequential(*layers)
- 设计sample语言的语法_Verilog语法之〇:Verilog HDL简介
- 获取微信所有聊天记录数据并通过Python制作词云图
- CoreAnimation动画入门(总结)
- 聚石塔服务器系统盘在线扩容
- 用MATLAB画线段(简单说)
- 夏季旅游度假照片展示短视频AE模板
- 在 LaTeX 中定义变量
- c代码实现 ifft运算_二维FFT,IFFT,c语言实现 | 学步园
- 文华软件怎样测试交易系统的收益,文华财经交易系统之终极黄金
- 为什么说电销企业需要智能电销系统原因?
- 六十星系之43紫微天相坐辰戌
- 桌面计算机不显示桌面,电脑不显示桌面怎么办,电脑无法显示桌面
- 新南威尔士大学巩东课题组招收若干名CV/ML/AI方向博士生
热门文章
- WPF 3D相关链接
- 计算机硬件认识与拆装,最新-计算机硬件维护与拆装实习报告 精品
- 微型计算机拆卸安装的注意事项,微型计算机使用注意事项及保养的一般方法.doc...
- 解决stetho第一次连接白屏的问题
- 手机游戏直播 : 悟空TV客户端设计与技术难点
- Vue实现腾讯云_音视频通话的推拉流
- 查看 Python 版本
- 062 [转载]如何从一台被铅封的机器上取走数据
- 计算机配置2块显卡,台式机切换显卡如何操作_台式电脑有两个显卡怎么切换-win7之家...
- 超越Facebook!特斯拉市值破万亿美元,马斯克身价近3000亿美元稳坐全球首富