1.NSDictionary 和NSMutableDictionary

NSDictionary dictionaryWithObjectsAndKeys:~,nil

使用键值对创建字典,用nil标志结束

NSDictionary initWithObjectsAndKeys:

使用键值对初始化字典,也用nil来表示结束.

dictionary count  计算其字典的长度.

dictionary keyEunmerator  将key全部存在NSEunmerator中,可以快速枚举其中的key的值.

dictionary objectForKey: key  通过key来查询值.

demo:

    #import <UIKit/UIKit.h> #import "MyClass.h" int main(int argc, char *argv[]) { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; //添加我们的测试代码
         NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:@"我是值",@"我是key1",@"我是值2",@"我是key2", nil]; //得到词典的数量 int count = [dictionary count]; NSLog(@"词典的数量为: %d",count); //得到词典中所有KEY值 NSEnumerator * enumeratorKey = [dictionary keyEnumerator]; //快速枚举遍历所有KEY的值 for (NSObject *object in enumeratorKey) { NSLog(@"遍历KEY的值: %@",object); } //得到词典中所有Value值 NSEnumerator * enumeratorValue = [dictionary objectEnumerator]; //快速枚举遍历所有Value的值 for (NSObject *object in enumeratorValue) { NSLog(@"遍历Value的值: %@",object); } //通过KEY找到value NSObject *object = [dictionary objectForKey:@"我是key2"]; if (object != nil) { NSLog(@"通过KEY找到的value是: %@",object); } int retVal = UIApplicationMain(argc, argv, nil, nil); [pool release]; return retVal; } 

2.NSMutableDictionary是NSDictionary的子类,因此也继承其有的方法.

[NSMutableDictionary dictionaryWithCapacity:10];//创建一个长度为10的字典,不过字典的内容超过了10会自动增加.

[NSMutableDictionary initWithCapacity: 10];
//初始化长度为10;
[dictionary setObject:~ forKey;~];
//x向可变的字典中添加数据;

[dictionary removeAllobjects];//删除所有的数据;

removeObjectForKey: //删除key的对应值;

    #import <UIKit/UIKit.h> #import "MyClass.h" int main(int argc, char *argv[]) { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; //添加我们的测试代码 //创建词典对象,初始化长度为10 NSMutableDictionary *dictionary = [NSMutableDictionary dictionaryWithCapacity:10]; //向词典中动态添加数据 [dictionary setObject:@"被添加的value1" forKey:@"key1"]; [dictionary setObject:@"被添加的value2" forKey:@"key2"]; //通过KEY找到value NSObject *object = [dictionary objectForKey:@"key2"]; if (object != nil) { NSLog(@"通过KEY找到的value是: %@",object); } int retVal = UIApplicationMain(argc, argv, nil, nil); [pool release]; return retVal; } 

[NSMutableDictionary dictionaryWithCapacity:10];//创建一个长度为10的字典,不过字典的内容超过了10会自动增加.

转载于:https://www.cnblogs.com/ievjai/p/3910621.html

Objective-C 学习记录6--dictionary相关推荐

  1. Redis的学习记录

    Redis的学习记录 1.先导了解 1.1 NOSQL概述 1.1.1 为什么要用NoSql? 1.1.2 NoSql了解 1.1.3 NoSql特点 1.1.4 NoSQL的四大分类 2. Redi ...

  2. python大神的成长之路_Python大神成长之路: 第三次学习记录 集合 函数 装饰 re...

    学习记录day03 字符串可以直接切片,But字符串不可修改 字符串修改:生成了一个新的字符串 LIst修改,在原基础上修改(原内存上) 集合是一个无序的,不重复的数据组合,它的主要作用如下: 去重, ...

  3. NLP训练营学习记录(一)

    文章目录 NLP训练营学习记录(一) 理解性小案例:机器翻译 概率语言模型 优化 自然语言处理的四个维度 算法复杂度 归并排序以及Master Theorem(主定理分析) P.NP hard.NP ...

  4. plink质控及转换文件、admixture软件学习记录

    plink质控及转换文件.admixture软件学习记录 目的:自定义ped文件和map文件,用plink质控及转换文件,使用admixture做群体结构学分析. ped文件和map文件根据格式用pa ...

  5. VQA任务学习记录1(附数据使用代码记录)

    0.前言 最近需要学习处理VQA任务特此记录,这个主要是对论文bottom-up and top-down()和bilinear attention network()中的代码部分的学习记录,目前也并 ...

  6. mpt3工具箱学习记录--day2

    mpt3学习记录--day2 mpt_demo_sets2 简介:Basic manipulation with convex sets(凸集的基本操作) YSet的创建 YSet的存储信息 查看YS ...

  7. Apollo Lattice Planner学习记录

    参考:<Apollo Lattice Planner学习记录> <[Baidu Apollo]6.2 Lattice Planner规划算法> <Apollo中Latti ...

  8. Pytorch学习记录-torchtext和Pytorch的实例( 使用神经网络训练Seq2Seq代码)

    Pytorch学习记录-torchtext和Pytorch的实例1 0. PyTorch Seq2Seq项目介绍 1. 使用神经网络训练Seq2Seq 1.1 简介,对论文中公式的解读 1.2 数据预 ...

  9. HTML5与CSS3权威指南之CSS3学习记录

    title: HTML5与CSS3权威指南之CSS3学习记录 toc: true date: 2018-10-14 00:06:09 学习资料--<HTML5与CSS3权威指南>(第3版) ...

  10. springboot @cacheable不起作用_Springboot学习记录13 使用缓存:整合redis

    本学习记录的代码,部分参考自gitee码云的如下工程.这个工程有详尽的Spingboot1.x教程.鸣谢! https://gitee.com/didispace/SpringBoot-Learnin ...

最新文章

  1. 【Groovy】使用 Groovy 语言开发服务器 Server 和客户端 Client 套接字程序 ( 服务器客户端完整代码示例 | 运行服务器端与客户端效果及过程分析 )
  2. 用SVR模型完成对Boston房价的回归预测
  3. android linux内核开发环境,定制Android 4.2.2开发环境
  4. 搜索引擎只能抓取html文件,为什么有些明明存在的网页不能被搜索到?
  5. python colorbar位置大小调整_python - matplotlib相邻子图:添加colorbar更改子图的大小 - 堆栈内存溢出...
  6. python 迭代器的方法_python--魔法方法,属性和迭代器
  7. 【程序源代码】万岳在线教育系统WEB开源版
  8. strcmp函数的实现方式
  9. 数学常识--两点之间距离公式
  10. mysql otl变量绑定_OTL翻译(5) -- otl_stream流相关绑定变量
  11. dojo 框架实战笔记
  12. SyncToy使用介绍
  13. C++ 优缺点之我见
  14. mac电脑装虚拟机遇到的坑!
  15. “净网”行动重拳打击网络淫秽色情信息多家涉黄网站被取缔
  16. Vivado两层电梯简易设计
  17. USACO 2018 January Contest Platinum A: Lifeguards 题解
  18. UltraISO虚拟光驱使用:制作ISO镜像文件与刻录CD/DVD
  19. V5-6R2019.DOC_DELMIA/CATIA_P3的帮助文件
  20. python歌曲_python抓取并下载音乐歌曲

热门文章

  1. ThreadLocal就是这么简单
  2. PLSQL 之类型、变量和结构
  3. Elasticsearch嵌套查询
  4. JSP中一个页面怎么分清是链接过来还是提交过来的?
  5. UITableView 界面小实例
  6. windows server 2008更新补丁失败排错
  7. ubuntu+php环境下的Memcached 安装方法
  8. Multiverse: Revolutionary Backend for Alembic // Multiverse: 下一代Alembic后端
  9. [Linux环境]-centos7下安装jdk1.8.0_141流程.
  10. [BZOJ1509][NOI2003]逃学的小孩