oc NSDictionary NSMutableDictionary
来源:互联网 发布:鼎信网络充话费不到账 编辑:程序博客网 时间:2024/06/01 08:46
一:字典的基本概念
Foundation中的字典(NSDictionary,NSMutableDictionary)是由键-值对组成的数据集合.正如,我们在字典里查找单词的定义一样.
通过key(键),查找的对应的value(值),key通常是字符串对象,也可以是其他任意类型对象.在一个字典对象中,key的值必须是唯一的.
此外,字典对象的键和值不可以为空(nil),如果需要在字典中加入一个空值,可以加入NSNull对象
二:不可变字典-NSDictionary
1:初始化(以一个元素和多个元素进行初始化):
//以一个键值对象 进行初始化
12345NSDictionary *dict1=[NSDictionary dictionaryWithObject:numObj1 forKey:@
"key1"
];
NSLog(@
"%@"
,dict1);
//以多个元素进行初始化
NSDictionary *dict2=[NSDictionary dictionaryWithObjectsAndKeys:numObj1, @
"key1"
,numObj2,@
"key2"
, nil];
NSLog(@
"%@"
,dict2);
12
:获取字典的数量
1//获取字典的数量
NSInteger count=[dict2 count];
NSLog(@"%ld",count);
3:根据key获取相应的value对象
//根据key获取相应的value对象
4:把字典的key转换成枚举对象用于遍历12NSString *value=[dict2 objectForKey:@
"key1"
];
NSLog(@
"%@"
,value);
NSEnumerator *enumerator=[dict2 keyEnumerator];
5:获取所有的key集合//获取所有的key集合
6:获取所有的value集合12NSArray *keys= [dict2 allKeys];
NSLog(@
"%@"
,keys);
//获取所有的value集合
三:可变字典NSMutableDictionary继承自NSDictionary12NSArray *values=[dict2 allValues];
NSLog(@
"%@"
,values);
1:初始化字典
2:向字典中添加指定的字典12//初始化字典
NSMutableDictionary *mutableDic=[[NSMutableDictionary alloc]initWithObjectsAndKeys:@
"v1"
,@
"k1"
,@
"v2"
,@
"k2"
,@
"v3"
,@
"k3"
,@
"v4"
,@
"k4"
,@
"v5"
,@
"k5"
, nil];
//向一个字典中添加一个字典
3:向字典中添加value和key123NSDictionary *dict4=[NSDictionary dictionaryWithObject:@
"v6"
forKey:@
"k6"
];
[mutableDic addEntriesFromDictionary:dict4];
NSLog(@
"%@"
,mutableDic);
4:创建空的字典,然后设置新的一个字典12//向字典中添加value和key
[mutableDic setValue:@
"object"
forKey:@
"key"
];
5:删除指定key的value值1234//创建空的字典,然后设置新的一个字典,把会之前的字典全部覆盖掉
NSMutableDictionary *mutableDict2=[NSMutableDictionary dictionary];
[mutableDict2 setDictionary:mutableDic];
NSLog(@
"%@"
,mutableDict2);
6:删除移除key集合的value值123//移除指定key的value值
[mutableDict2 removeObjectForKey:@
"k4"
];
NSLog(@
"%@"
,mutableDict2);
7:删除字典中所有的value1234//删除一组key的value值
NSArray *arrayKeys=[NSArray arrayWithObjects:@
"k1"
,@
"k2"
,@
"k3"
, nil];
[mutableDict2 removeObjectsForKeys:arrayKeys];
NSLog(@
"%@"
,mutableDict2);
//删除字典中所有的数据
四:枚举遍历12[mutableDict2 removeAllObjects];
NSLog(@
"%@"
,mutableDict2);
1:一般遍历
//一般遍历
123456NSArray *allKeys=[mutableDic allKeys];
for
(NSInteger i=
0
; i<[allKeys count]; i++) {
NSString *obj=[mutableDic objectForKey:[allKeys objectAtIndex:i]];
NSLog(@
"%@"
,obj);
}
2:快速枚举
//快速遍历
3:迭代器枚举1234for
(id key in mutableDic) {
NSString *object=[mutableDic objectForKey:key];
NSLog(@
"%@"
,object);
}
12345678//枚举器
NSEnumerator *enumerator1= [mutableDic keyEnumerator];
id key=[enumerator1 nextObject];
while
(key) {
id object=[mutableDic objectForKey:key];
NSLog(@
"%@"
,object);
key=[enumerator1 nextObject];
}
0 0
- NSDictionary,NSMUtableDictionary-OC+class
- oc NSDictionary NSMutableDictionary
- OC之字典(NSDictionary, NSMutableDictionary)
- OC-FUNDATION-NSDictionary&NSMutableDictionary&Block
- OC-字典常用操作(NSDictionary、NSMutableDictionary)
- OC-字典常用操作(NSDictionary、NSMutableDictionary)
- OC-字典常用操作(NSDictionary、NSMutableDictionary)
- [OC学习笔记]NSDictionary、NSMutableDictionary常用方法
- 黑马程序员-oc基础-集合NSDictionary,NSMutableDictionary
- OC思维导图之NSDictionary&NSMutableDictionary
- OC学习 第八章 NSDictionary和NSMutabledictionary
- OC中NSDictionary、NSMutableDictionary、NSSet、NSMutableSet
- oc知识总结三 NSDictionary、NSMutableDictionary
- 《OC基础教程》读书笔记8-字典NSDictionary,NSMutableDictionary
- NSDictionary NSMutableDictionary
- NSDictionary、NSMutableDictionary
- NSDictionary NSMutableDictionary
- NSDictionary NSMutableDictionary
- 数据结构之顺序表学习笔记
- 第一节 Informatica 体系架构之 Domain 的概述
- java中volatile关键字的含义
- httpclient.execute()不执行也不报错解决办法
- 已搭建独立博客,请移步下面网址
- oc NSDictionary NSMutableDictionary
- Lowest Common Multiple Plus HDU2028
- MacOS 安装 convnet的几个问题
- 敏捷开发中的架构设计
- Ubuntu下安装GTK库
- Linux下的Perforce客户端使用 – P4
- IntelliJ IDEA14如何配置tomcat
- leetcode_Validate Binary Search Tree
- ObjectC----几个小练习