OC中的字典NSDictionary
==========================
字典
==========================
NSDictionary * dict = [[NSDictionary alloc] initWithObjectsAndKeys:@"One", @"1", @"Two", @"2", @"Three", @"3", @"One", @"4", nil];
//字典中的数据以键值对的方式进行存储
//@“One”和@“1”组成了一个键值对
//@“1”称为键(key)
//@“One”称为值(value)
//值是需要存储的数据,键是寻找数据的索引
//字典的作用,就是通过键,快速的查找到值。
//值可以重复,键是唯一的。
//字典中的键值对没有顺序,没有所谓第一个键值对,第二个键值对
//键和值都是任意对象,字典中存储对象的地址。不过键往往使用字符串
NSDictionary * dict2 = @{@"4" : @"Four", @"1" : @"One", @"2" : @"Two", @"3" : @"Three"};
NSLog(@"%@", dict);
NSLog(@"%@", dict2);
//通过传入键,返回值的地址
NSString * value = [dict objectForKey:@"3"];
value = dict[@"3"];
//Xcode 4.6 以后
//如果没有对应的键,返回nil
NSLog(@"%@", value);
//返回键值对总数
NSUInteger count = [dict count];
NSLog(@"%lu", count);
//返回所有的键
NSArray * keys = [dict allKeys];
//返回所有的值
NSArray * values = [dict allValues];
//遍历字典
for (NSString * key in dict) {
//每次循环key指向一个键
//通过遍历键,间接遍历了值
NSLog(@"%@", dict[key]);
}
NSMutableDictionary * mutableDict = [[NSMutableDictionary alloc] init];
//重置字典
[mutableDict setDictionary:@{@"1" : @"One", @"2" : @"Two", @"3" : @"Three"}];
//增
[mutableDict setObject:@"Four" forKey:@"4"];
//删
//通过键删除值
[mutableDict removeObjectForKey:@"3"];
//通过多个键,删除多个值
[mutableDict removeObjectsForKeys:@[@"1", @"2", @"3"]];
//删除所有键值对
[mutableDict removeAllObjects];
ΔOC是一门非常优美的语言,名字基本上都是单词的组合,通过名字可以了解这个方法或者这个变量的作用;
OC中的字典NSDictionary的更多相关文章
- OC中的字典
// ********************不可变最字典***************** /* NSDictionary * dic = [NSDictionary dictionaryWithO ...
- OC中NSDictionary(字典)、NSMutableDictionary(可变字典)、NSSet(集合)、NSMutableSet(可变集合)得常用方法
字典用于保存具有映射关系数据的集合 一个key—value对认为是一个条目(entry),字典是存储key—value对的容器 与数组不同,字典靠key存取元素 key不能重复,value必须是对象 ...
- OC中Foundation框架之NSDictionary、NSMutableDictionary
NSDictionary概述 NSDictionary的作用类似:通过一个key ,就能找到对应的value 同样 NSDictionary是不可变的,一旦初始化完毕,里面的内容就无法修改 NSDic ...
- OC中如何把数组中字典的数据转换成URL?
在使用objective-c语言开发iOS应用中,会向服务器通过URL请求一些数据,因此对URL的拼接肯定少不了.而在iOS中,我们一般是通过将字典中的数据拼接成我们要请求的URL字符串,那这个是怎么 ...
- OC中如何把字典中的数据拼接成url字符串
在使用objective-c语言开发iOS应用中,会向服务器通过URL请求一些数据,因此对URL的拼接肯定少不了.而在iOS中,我们一般是通过将字典中的数据拼接成我们要请求的URL字符串,那这个是怎么 ...
- OC中runtime的使用
一.runtime简介* RunTime简称运行时.OC就是“运行时机制”,也就是在运行时候的一些机制,其中最主要的是消息机制.* 对于C语言,“函数的调用在编译的时候会决定调用哪个函数”.* 对于O ...
- OC中intValue要注意的地方
在程序中,发现一个问题,写了个例子,如下: NSDictionary * dict = [[NSDictionary alloc] init]; NSString * s ...
- OC中文件的操作
OC中文件操作,在之前的文章中,已经接触到了文件的创建了,但是那不是很具体和详细,这篇文章我们就来仔细看一下OC中是如何操作文件的: 第一.首先来看一下本身NSString类给我们提供了哪些可以操作文 ...
- OC基础:数组.字典.集 分类: ios学习 OC 2015-06-18 18:58 47人阅读 评论(0) 收藏
==============NSArray(不可变数组)=========== NSArray,继承自NSObject 用来管理(储存)一些有序的对象,不可变数组. 创建一个空数组 NSArray ...
随机推荐
- [JS] JS模块化开发之RequireJS
本节将简述RequireJS常用的功能 RequireJS 实现了 Asynchronous Module API. 目录: 为什么使用RequireJS 加载RequireJS Hello Worl ...
- Fundamentals of MVC
Chapter 1 Fundamentals of MVC Microsoft's Web Development Platforms Understanding the past can b ...
- JQuery01
一:JQuery 1 JQuery知识 *:就是让我们学会调用JQ插件,其实内部就是对JS的封装. *:jquery里面有三个文件, 第2个和第3个其实里面的内容是一样的,只是第三个对其进行了压缩,使 ...
- 新学C#的List<T>总结
所属命名空间:using System.Collections.Generic; List<T>类是 ArrayList 类的泛型等效类. 该类使用大小可按需动态增加的数组实现 IList ...
- nginx平台初探(100%)
http://tengine.taobao.org/book/chapter_02.html 初探nginx架构(100%)¶ 众所周知,nginx性能高,而nginx的高性能与其架构是分不开的.那么 ...
- 历史疑团之EJB
在学习Sping框架的过程中,看到过很多次关于EJB的批判.使用了SpringMVC但是并没有真性情般体会到它的优点,所以有必要对传统的Java Bean和EJB来做一些了解,无奈百度搜了很多知识,还 ...
- linux下安装rzsz
1.登陆linux,下载rzsz安装包 wget http://freeware.sgi.com/source/rzsz/rzsz-3.48.tar.gz 2.tar zxvf rzsz-3.48.t ...
- 用事实说话,成熟的ORM性能不是瓶颈,灵活性不是问题:EF5.0、PDF.NET5.0、Dapper原理分析与测试手记
[本文篇幅较长,可以通过目录查看您感兴趣的内容,或者下载格式良好的PDF版本文件查看] 目录 一.ORM的"三国志" 2 1,PDF.NET诞生历程 2 2,Linq2 ...
- 【转】PHP计划任务:如何使用Linux的Crontab执行PHP脚本
转:https://www.centos.bz/2011/03/auto-run-task-crontab/ 我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是 ...
- js 的点击事件
<button id="btn">click</button> var btn=document.getElementById('btn'); 第一种: b ...