OC 重点之NSArray(数组) NSDictionary不可变字典类与NSMutableDictionary 可变字典类 (概括)

原创 2015年11月18日 17:43:57

————————————————————NSArray(数组)————————————————————-
1、 OC提供了 数组 类 NSArray 帮我们存放了一组数据, 这些数据靠下标标识, 下标从0开始 注意: IOS开发中, 凡是涉及到下标, 无论什么类, 下标始终都是从0开始的. 与C语言的数组不同, OC的数组只能存放对象. 基本数据类型无法直接储存到数组去, 只能通过转换为NSNumber类型来储存。
2、 OC中数组也是分为可变与不可变数组 NSArray 和 NSMutableArray
区别:
NSArray 创建完之后, 内容就不可以发生变化, 不能插入元素, 不可以删除元素, 不可以交换元素.
NSMutableArray 创建完成之后, 可以对数组中的元素进行调整, 如: 插入元素, 删除元素, 替换元素, 交换元素等.
数组不同于字符串, 字符串多数情况下是不需要修改的, 即多数情况下我们使用NSString 来创建字符串, 但数组作为容器, 经常会添加, 删除元素, 所以通常使用NSMutableArray。
3、 NSArray OC数组中只能存放对象.
如何快速创建一个不可变字符串/NSString *str = @”how are you”, // 这个字符串放在常量区, 只是指针str 指向了常量区
NSString *str1= [[NSString alloc]initWithFormat:@“good moring! %d”,4]; Format 是格式化输入,类似于printf
NSString *str2= [[NSString alloc]initWithObjects:@“hello”,@“world”,@“zhangsan”,@“wangwu”,str,str1,nil]; object是对象的意思
数组中,存的时字符串,取的时候也得用字符串格式来接收。存得时候是Pesrson(取的时候也用Person来接收)。
如:NSString *s = [str2 objectAtIndex:3]; Person *p = [str2 objectAtIndex:3];
4、求数组的元素个数使用 count 方法。NSUInteger b = [str2 count ];
5、创建一个可变数组,初始容量为10个元素:NSMutableArray *arrM = [NSMutableArray arrayWithCapacity:10];
[num4 addObject:@“ok”] ; addObject 功能是向num4数组中添加了一个元素。(在末尾加)
[num4 insertObject:@“SHS150403的学员很牛B”atIndex:2]//再数组num4中从第三个元素开始插入一个字符串。
6、数组中只能是对象才可以进行遍历。

————————NSDictionary不可变字典类与NSMutableDictionary 可变字典类————————-
1. 不可变字典: 定义并赋值: NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@”zhangsan”,@”name”,@”nan”,@”sex”,@”18”,@”age”,nil];
NSL(@”%@”,dic);
字典是通过”key – value”(键 与 值)来储存的, “key - value”是成对出现的, 称为一个元素.
2、通过key 来查找对应的 value(值); NSString *value = [dic objectForKey:@“name”];NSLog(@“%@”,value);
3、计算字典的元素个数: NSLog(@“%lu”,[dic count]);
4、查看全部的 key NSArray *key = [dic allKeys];//因为是多个键,所以需要一个数组来存储。 NSLog(@“%@”,key);
5、查看全部的 value NSArray *value1= [dic allValues];NSLog(@“%@”,value1)
6、查看某个 value 对应的全部 key (key不能相同,但是 value 是可以相同的),
NSArray *key2 = [dic allKeyForObject:@“zhagnsan”]; NSLog(@“%@”,key2);
可变字典(NSMutableDictionary)
1、NSMutableDictionary *mDc = [NSMutableDictionary dictionaryWithCapacity:10];
NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@“zhangsan”,@“name”,@“nan”,@“sex”,@“18”,@“age”,nil];
[mDic addEntriesFromDictionary:dic];//向可变字典mDic中添加一个字典dic.
[mDic setObjet:@“1000”forKey:@“salary”];添加单个key —- value 对一个元素。
2、字典是无序的。但是可以通过对应的 key 取出对应的 value 值,

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

NSArray,NSDictionary的常用方法与可变数组可变字典的常用方法

-- NSArray 1. objectAtIndex:index    访问数组中某个元素 NSArray *array = @[@"元素1", @"元素2"]; NSLog(@"...

OC 5 NSArray 数组 NSDictionary 字典 NSSet集

1.oc中常用的容器: 1.NSArray 数组 2.NSDictionary 字典  3.NSSet集 2.NSArray数组:继承自NSObject  是不可变的,用于管理一系...

Objective-c的Foundation中常用类4——字典NSDictionary、NSMutableDictionary

Foundation中的字典是由键-值对组成的数据集合,好比java中的Map,在字典对象中key值必须是唯一的,另外字典对象中的键和值都不能为nil。,如果要在字典对象中表示一个空值,可以用NSNu...

OC-字典常用操作(NSDictionary、NSMutableDictionary)

字典是关键字及其定义的集合 NSDictionary能在给定得关键字key(通常是一个NSString字符串)下存储一个数值value(可以是任意类型的Objective-C对象),然后你就可以...

20150612_OC之字典NSDictionary及NSMutableDictionary

//NSDictionary //创建一个不可变字典对象 //NSMutableDictionary //创建一个可变字典对象 //字典中对象都是键值对:key...

【Objective-C】OC中字典基本概念和常用方法(NSDictionary和NSMutableDictionary)

一:字典的基本概念     Foundation中的字典(NSDictionary,NSMutableDictionary)是由键-值对组成的数据集合.正如,我们在字典里查找单词的定义一样. 通过...

iOS开发学习专题-基础知识(三)NSDictionary字典NSMutableDictionary可变字典NSDictionary字典和json转换详细使用方式

本文主要讲解的是不可变字典NSDictionary可变字典NSMutableDictionary字典NSDictionary和Json转换详细使用方式包括类型和值之间的转换 首先来看看不可变的字典...

可变字典(NSMutableDictionary)简介

字典是一个无序的集合,也可称之为键值对。与数组不同的是字典可以通过特定的key快速查找到想要的值,而不用遍历字典。所以一个唯一的key只能对应一个值,而多个key可以对应同一个值。字典分为不可变字典(...

OC学习之道:OC对象,字典,集合的使用方法NSDictionary,NSMutableDictionary, NSSet,NSMutableSet,NSCountedSet

OC学习之道:OC对象,字典,集合的使用方法NSDictionary,NSMutableDictionary, NSSet,NSMutableSet,NSCountedSetint main(int ...

【IOS 开发学习总结-OC-31】★★OC之foundation 框架——字典(NSDictionary 与 NSMutableDictionary)

NSDictionary用于保存具有映射关系的数据。NSDictionary集合保存了2组值——一组存 key, 一组存 value。 value与 key 都可以是任何引用类型的数据。Map ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:OC 重点之NSArray(数组) NSDictionary不可变字典类与NSMutableDictionary 可变字典类 (概括)
举报原因:
原因补充:

(最多只允许输入30个字)