OC基础数据类型-NSDictionary
1、字典NSDictionary
字典与数组的区别:数组讲究顺序,而字典可以快速帮助我们找到数据,数据是我们的目的,键是我们的手段
NSDictionary *dict = [[NSDictionary alloc] initWithObjectsAndKeys:@"one",@"",@"two",@"",@"three",@"", nil];
字典中的元素是以键值对的形式存储的
@"one"和@"1"组成了一个键值对
@"one"称为值(value)@"1"称为键(key)
键值对的键和值,都是任意的对象,但是键往往使用字符串
字典存储对象的地址没有顺序
字典的遍历分为:键的遍历和值的遍历
NSEnumerator *enumeratorKey = [dict keyEnumerator]; //键的遍历
NSEnumerator *enumeratorValue = [dict objectEnumerator]; //值的遍历
通过键快速的找到值
NSString *str = [dict objectForKey:@""];
快速枚举法
for(id obj in dict){ //这种方式遍历到的是键Key,获得了键,也就获得了值
NSLog(@"%@",obj);
NSLog(@"%@",[dict objectForKey:obj]);
}
2、可变字典NSMutableDictionary,是字典的子类,拥有字典的所有方法,并且有一些自己的方法。
//初始化
NSMutableDictionary *mDict = [[NSMutableDictionary alloc] init];
添加键值对(set……)
//添加
[mDict setObject:@"one" forKey:@""];
[mDict setObject:@"two" forKey:@""];
删除键值对(remove……)
//删除
[mDict removeObjectForKey:@""];
结题!!!
OC基础数据类型-NSDictionary的更多相关文章
- OC基础--数据类型与表达式
前言 做iOS开发有3年了,从当初的小白到现在,断断续续看过很多资料,之前也写过一些博文来记录,但是感觉知识点都比较凌乱.所以最近准备抽时间把iOS开发的相关知识进行一个梳理,主要分为OC基础.UI控 ...
- OC基础数据类型-NSNumber
1.NSNumber:专门用来装基础类型的对象,把整型.单精度.双精度.字符型等基础类型存储为对象 //基本数据类型 //专门用来装基础类型的对象 NSNumber * intNumber = [[N ...
- OC基础数据类型-NSString
1.字符串的初始化 //字符串的初始化 NSString *str = @"Hello world!"; NSString *str2 = [[NSString alloc] in ...
- OC基础数据类型-NSData-NSMutableData-NSString
NSData和NSMutableData存储的是二进制数据,在文件操作,网络,以及核心图形图像中使用较广泛.NSData创建后不可以再修改,NSMutableData可以再次修改. 1.NSStrin ...
- OC基础数据类型-NSSet
1.集合:集合(NSSet)和数组(NSArray)有相似之处,都是存储不同的对象的地址:不过NSArray是有序的集合,NSSet是无序的集合.集合是一种哈希表,运用散列算法,查找集合中的元素比数组 ...
- OC基础数据类型-NSData
1.NSData,数据,当我们需要把一些信息写入到文件里或发送到网络上,我们需要把这些数据转换下,变成纯粹的0.1字符流 1 NSString * str = @"hello, world! ...
- 【转】 OC基础数据类型-NSSet
原文 : http://www.cnblogs.com/GISerYang/p/3340937.html 1.集合:集合(NSSet)和数组(NSArray)有相似之处,都是存储不同的对象的地址:不过 ...
- OC基础数据类型-NSValue
1.NSValue:将指针等复杂的类型存储为对象 struct sct { int a; int b; }sctt; NSValue * value = [[NSValue alloc] initWi ...
- OC基础数据类型-NSArray
1.数组的初始化 NSArray *array = [[NSArray alloc] initWithObjects:@"One", @"Two", @&quo ...
随机推荐
- <? extends A> 和 <? super A> 的意思
/** * @author Lee Boynton * @author Arthur van Hoff * @author Martin Buchholz * @author Ulf Zibis * ...
- DateTime.Now与DateTime.Today的区别
区别如下图: DateTime.Now: 不仅显示日期 还显示当前时间: DateTime.Today: 只显示当前日期,没有时间
- Game-Tech小游戏专场第二趴,这次帝都见
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯游戏云 发表于云+社区专栏 自从小游戏推出以来,凭借微信带来的巨大流量和变现能力,小游戏生态极速地建立了起来,短短半年多时间已经出 ...
- html中 alt 和 title 的区别
alt 用来给图片来提示的(图片载入失败时以文本形式提示). Title用来给链接文字或普通文字提示的(在鼠标放上去的时候就会提示).
- Splunk大数据分析经验分享
转自:http://www.freebuf.com/articles/database/123006.html Splunk大数据分析经验分享:从入门到夺门而逃 Porsche 2016-12-19 ...
- android 生成随机数
/** * 随机数.字母 工具类 * Created by admin on 2017/2/20. */ public class RandomUntil { /** * 生成 ...
- JS将文件像form表单一样提交到后台
这是很简单.. HTML <div> <input type="file" id="myfile"> <input type=&q ...
- Java反射获取当前项目下所有类,支持Servlet
反射在很多时候要用,尤其自己编写框架时,那么如何获得当前项目下所有类呢!以下是本人封装的一个比较简洁的方法: [功能代码] //通过loader加载所有类 private List<Class& ...
- Browser对象之Window对象
对象属性 对象方法 setInterval() 按照指定的周期(以毫秒计)来调用函数或计算表达式. setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式. setInte ...
- 数组之reduce()和reduceRight()
1.reduce()和reduceRight()方法使用指定的函数将数组元素进行组合,生成单个值. reduce()可以传入两个参数,第一个是执行化简操作的函数.同样这个函数可以有参数,第一个参数代表 ...