----->NSArray

1.创建数组

NSArray *array1 = [[NSArray alloc] initWithObjects:@"One",@"Two",@"Three",@"Four",nil];

NSArray*array2 = [[NSArray alloc] arrayWithArray:array1];

2.常用方法

--获取数组长度

NSInteger count = [array1 count];

--根据下标进行访问

NSString * string = [array1 objectAtIndex: 2];

--在原来的数组追加对象到一个新的数组

NSArray * addArr = [array1arrayByAddingObject:@"Five"];

--用指定的字符串将数组元素串接起来

NSString * string = [array1 componentsJoinedByString:@","];

-- 数组中是否包含某对象

BOOL isHas = [array1 containsObjet:@"sss"];

--查询指定对象在数组中的位置,没有返回NSNotFound

NSInteger index = [array1indexOfObject:@"One"];

--获取数组中的最后一个元素

NSString * lastString = [array1 lastObject];

----->NSMutableArray

可变数组继承自NSArray

1.创建数组

NSMutableArray *array = [ NSMutableArray arrayWithCopacity:4];

2.常用方法

--向数组中添加元素

[array addObject:@"Five"];

--向数组指定下标插入元素

[array insertObject:@"Six",atIndex:0];

--移除最后一个元素

[array removeLastObject];

--移除指定元素

[array removeObject:@"One"];

--移除指定下标元素

[array removeObjectAtIndex:1];

--向数组中添加数组

[array addObjectsFromArray:array1];

--替换指定下标元素

[array replaceObjectAtIndex:0 withObject:@"lala"];

--移除所有对象

[array reomoveAllObjects];

3.遍历数组

常规

NSArray *array = [NSArray arrayWithObjects:@"a",@"b",@"c",nil];

int len = [ array count];

for(int i = 0 ;i < len i++)

{

NSLog(@"%@",[array objectAtIndex:i]);

}

快速枚举

NSMutableArray *newArray =[[NSMutableArray alloc] init];
NSArray *oldArray = [NSArray arrayWithObjects:
@"a",@"b",@"c",@"d",@"e",@"f",@"g",@"h",nil];
NSLog(@"oldArray:%@",oldArray);

for(id obj in oldArray)
{
   [newArray addObject: obj];
}
NSLog(@"newArray:%@", newArray);

[newArray release];

----->NSDictionary

1.创建字典

NSDictionary *dictionary = [[NSDictionary alloc] initWithObjectsAndKeys:@"One",@"1",@"Two",@"2",@"Three",@"3",nil];

--初始化字典,包含其它字典

NSDictionary *dic = [NSDictionary dictionaryWithDictionary:otherdic];

--已文件内容初始化字典

NSDictionary *dic = [NSDictionary dictionaryWithContentsOfFile:path];

--获取字典数量

NSInteger count = [dic count];

--通过key获取对应的vaule对象

NSObject * obj = [dic objectForKey:@"key"];

--将字典的key转换成枚举对象,用于遍历

NSEnumerator* enumerator = [dic KeyEnumerator];

--获取所有键的合集

NSArray * keys = [dic allKeys];

--所有值的集合

NSArray * values = [dic allValues];

----->NSMutableDictionary

--创建可变字典

NSMutableDictionary *dictionary = [NSMutableDictionary dictionary];

添加字段

[dictionary setObject:@"One" forKey:@"1"];

--删除指定字典

[dictionary removeObjectForKey:@"1"];

根据key数组删除

[dictionary removeObjectsForKeys:array];

--遍历字典

for( id key in dic)

{

id obj = [dic objectForKey:key];

}

通过枚举来枚举

NSEnumerator *enum = [dic KeyEnumerator];

id key = [enum nextObject];

while(key)

{

id obj = [dic objectForKey:key];

key = [enum nextObject];

}

----->NSValue

NSValue可包装任意值

+(NSValue *) valueWithBytes:(const void*) value objCtype:(const char*)type

NSRect rect = NSMakeRect(1,2,30,40);

NSValue *value;

value = [NSValue valueWithBytes:&rect objCType:@encode(NSRect)];

[vaule getValue:&rect];

一些结构体包装

+(NSValue *) valueWithPoint:(NSPoint) point;

+(NSValue *) valueWithSize:(NSSize) size;

+(NSValue *) valueWithRect:(NSRect) rect;

-(NSPoint) pointValue;

-(NSSize) sizeValue;

-(NSRect) rectValue;

NSArray和NSDictionary相关推荐

  1. NSArray,NSSet,NSDictionary总结 (转)

    NSArray,NSSet,NSDictionary总结 博客分类: iphone 三种集合类来收集cocoa对象(NSObject对象): NSArray 用于对象有序集合(相当于是数组) NSSe ...

  2. IOS 总结:NSArray,NSSet,NSDictionary

    用法总结:NSArray,NSSet,NSDictionary Foundation framework中用于收集cocoa对象(NSObject对象)的三种集合分别是: NSArray 用于对象有序 ...

  3. 【IOS 开发】Objective-C Foundation 框架 -- 字符串 | 日期 | 对象复制 | NSArray | NSSet | NSDictionary | 谓词

    一. 字符串 API 1. NSString 用法简介 (1) NSString API 介绍 NSString 功能 : -- 创建字符串 : 使用 init 开头的实例方法, 也可以使用 Stri ...

  4. 关于NSString,NSMutableString,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary

    NSString,NSMutableString,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary 在 OC 中我们天天都要用,而我们要怎 ...

  5. NSArray、NSDictionary、NSString存储、删改、遍历

    NSString 创建一个NSString实例:NSString *str = @"this is string";//字面量语法 常用API: +stringWithFormat ...

  6. 容器类的常用操作(NSArray,NSNumber,NSDictionary,NSSet)

    1.数组 : 对象,可为任意类型 //(*1.)NSArray的常用方法NSString *str1 = [[NSString alloc]initWithFormat:@"%d杨毅&quo ...

  7. 放在NSArray、NSDictionary等容器内的对象Item,Item中的property在程序运行过程中被无故释放...

    可能是被释放的property本身是OC对象而它的属性被误写成assign,例如: @interface MyItem : Object @property (nonatomic, assign) N ...

  8. NSArray和NSDictionary的混合

    转载于:https://www.cnblogs.com/xzz5211314/p/5120858.html

  9. NSDictionary和NSMutableDictionary good

    NSDictionary和NSMutableDictionary 2010-12-20 09:14 914人阅读 评论(0) 收藏 举报 2)NSNull NSNull大概是Cocoa里最简单的类了, ...

最新文章

  1. [IOI2014]Wall
  2. android自定义view圆,Android自定义View圆形百分比控件(一)
  3. html5求6的阶乘,.net 求数的阶乘
  4. 记录cu上shell比赛的第6题:输入日期,打印天数
  5. Leetcode: Palindrome Partition I II
  6. mysql修改校对集_MySQL 图文详细教程之校对集问题
  7. 图像 pipeline_ARADEEPOPSIS:一个基于叶状态语义分割的自动植物表型Pipeline
  8. Centos7中安装zookeeper3.7.0_找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeer---zookeeper工作笔记003
  9. js计算两个整数之间的百分比
  10. 朋友,你A9了吗?(重新定义A8、A9)
  11. C语言实现链栈的创建、入栈、出栈、取栈顶、遍历......等基本操作(小白版详解)
  12. Mac Photoshop CS6 安装教程
  13. C++中的小数位数控制和有效数字控制
  14. LeetCode刷题日记:LCP 03.机器人大冒险
  15. civil 3d 计算机配置,Civil 3D技巧:如果做到设计文件的高效出图?
  16. switch新机注意事项
  17. 状态寄存器传送指令 —— 访问(读写)CPSR寄存器
  18. mybatis-day02-CRUD、动态代理开发、核心xml详解、输入输出参数
  19. QQ机器人思路理解(C++、CQ)
  20. win10 office activation tools

热门文章

  1. mixin机制 vue_Vue Mixin用法
  2. 查看DAID设备Linux,linux 硬件信息查看命令
  3. java reactor 响应式编程
  4. 类Fomo3D游戏漏洞与修复机制全解析
  5. hihoCoder 1362 修补木桶
  6. React的新旧对比与回顾
  7. win7下win2008安装mysql_大龙在win7下安装SQLServer2008r2的悲惨经历
  8. 【Linux】日志 日志管理服务 日志轮替
  9. 推荐大家一个个人觉得超级好的Java学习网站
  10. 计算机一级簇型水平统计图,2017计算机一级MSOffice操作题练习附答案(2)