黑马程序员---OC学习笔记之NSDictionary的介绍及使用
来源:互联网 发布:下载windows系统的网站 编辑:程序博客网 时间:2024/06/02 13:12
——Java培训、Android培训、iOS培训、.Net培训——–
1、NSDictionary介绍
NSDictionary 的作用类似:通过一个key,就能找到对应的value。它是不可变的,一旦初始化完毕,其内容就无法被修改
而且字典是无序的。
2、创建
//NSDictionary介绍与使用 //1)创建字典,一旦创建,内容就不可改变 //空字典 NSDictionary *dic1 = [NSDictionary dictionary]; //2)创建只有一个键值对的字典 NSDictionary *dic2 = [NSDictionary dictionaryWithObject:@"Amos" forKey:@1]; NSLog(@"dic2 = %@",dic2); //3)创建有多个键值对的字典 //【注意】字典的key和value都必须是OC对象不能是基础数据类型 //方式一:NSDictionary *dic3 = [NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:@"Amos",@"Allen",@"Andy", nil]forKeys:[NSArray arrayWithObjects:@"1",@"2",@"3", nil]]; //方式二: NSDictionary *dic3 = [NSDictionary dictionaryWithObjectsAndKeys:@"Amos",@"1",@"Allen",@"2", nil]; NSLog(@"dic1 = %@",dic3); //4)快速创建字典 //@{key:vaule} NSDictionary *dic4 = @{@1: @"Amos",@2: @"Allen",@3: @"Andy"}; NSLog(@"dic1 = %@",dic4);
3、字典的特点
1)字典的key是不能重复的,如果重复了将不会被添加到字典
2)键值对存储数据是无序的
3)键值对集合可以根据key快速获取数据
4、基本用法
1)获取地点键值对个数,即字典长度
- (NSUInteger)count;
例如:
NSUInteger count = dic4.count;
2)根据key值去value
NSString *name = [dic4 objectForKey:@1];
NSLog(@”name = %@”,name);
5、字典的遍历
NSDictionary *dic4 = [NSDictionary dictionaryWithObjectsAndKeys:@"1", @"Amos",@"2", @"Allen",@"3", @"Andy", nil]; //遍历字典 //1)普通方法:先获取key,再根据key获取value for (NSString *key in dic4) { NSLog(@"key = %@ value = %@",key,[dic4 objectForKey:key]); } //2)block遍历 [dic4 enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) { NSLog(@"key = %@ value = %@",key,obj); }];
2015-10-08 12:00:53.410 DictionaryDemo[3832:303] key = Amos value = 1
2015-10-08 12:00:53.412 DictionaryDemo[3832:303] key = Allen value = 2
2015-10-08 12:00:53.413 DictionaryDemo[3832:303] key = Andy value = 3
2015-10-08 12:00:53.413 DictionaryDemo[3832:303] key = Amos value = 1
2015-10-08 12:00:53.414 DictionaryDemo[3832:303] key = Allen value = 2
2015-10-08 12:00:53.414 DictionaryDemo[3832:303] key = Andy value = 3
- 黑马程序员---OC学习笔记之NSDictionary的介绍及使用
- 黑马程序员 - OC语言 - NSDictionary的介绍及使用
- 黑马程序员----OC学习之NSDictionary及NSMutableDictionary
- 黑马程序员-[OC]学习之旅-NSArray 和NSDictionary 的介绍
- 黑马程序员---OC学习笔记之NSNumber和NSValue的介绍和使用
- 黑马程序员---OC学习笔记之NSDate的介绍和使用
- 黑马程序员---OC学习笔记之分类(Catgory)的概念及使用
- 黑马程序员---OC学习笔记之block的使用场景
- 黑马程序员---OC学习笔记之NSFileManager介绍和用法
- OC学习笔记之NSDictionary
- 黑马程序员---OC学习笔记之copy概念及入门
- 黑马程序员---OC学习笔记之protocol概念及基本使用
- 黑马程序员---OC学习笔记之使用NSURL读写字符串
- 黑马程序员 NSDictionary的介绍及基础用法
- 黑马程序员——NSDictionary和NSMutableDictionary的介绍及使用
- 黑马程序员---OC学习笔记之ARC的概念及原理
- 黑马程序员----OC学习笔记之NSArray
- 黑马程序员--NSDictionary的使用
- c++线程注入学习
- Java 集合系列15之 Set架构
- Android数据库ORMLite框架的注解
- Linux Makefile 详细语法
- 微信”发现“页面布局浅谈
- 黑马程序员---OC学习笔记之NSDictionary的介绍及使用
- SDK更新错误解决办法
- 原点 中心点
- 自定义ProgressBar的加载效果
- javascript事件冒泡
- BitmapFactory.decodeFile内存溢出和变相解决方案
- 基于nginx tomcat redis分布式web应用的session共享配置
- leetcode题目:Word Pattern (Javascript版)
- C++学习---析构函数-2