NSArray和NSMutableArray相互转换, 以及常用方法-备
2024-08-24 11:59:15
有时候项目中NSArray和NSMutableArray需要相互转化,下面给出相关代码
1.NSArray
1.1 转化:NSMutableArray
1
|
NSMutableArray *mutableArray = [ NSMutableArray arrayWithArray:array]; // array为NSMutableArray类型 |
1.2 常用方法
不可变数组对象:
[array count] : 得到这个对象数组的长度。
[array objectAtIndex 0]: 传入数组脚标的id 得到数据对象。
[arrayWithObjects: …] :向数组对象初始化赋值。这里可以写任意对象的指针,结尾必须使用nil。
+(id)arrayWithObjects:obj1,obj2,…nil | 创建一个新的数组,obj1,obj2……是他的元素对象,以nil对象结尾 |
-(BOOL)containsObject:obj | 确定数组中是否包含对象obj |
-(NSUInteger)count | 返回数组元素个数 |
-(NSUInteger)indexOfObject:obj | 第一个包含obj元素的索引号 |
-(id)objectAtIndex:i | 返回存储在位置 i 的对象 |
-(void)makeObjectsPerformSelector:(SEL)selector | 将 selector 只是的消息发送给数组中的每个元素 |
-(NSArray*)sortedArrayUsingSelector:(SEL)selector | 根据selector 指示的比较方法对数组进行排序 |
-(BOOL)writeToFile:path atomically:(BOOL)flag | 将数组写入指定的文件中,如果 flag 为 YES,则需要先创建一个临时文件 |
2.NSMutableArray :
2.1 转化: NSArray
1
|
NSArray *array = [ NSArray arrayWithArray:mutableArray]; // mutableArray为NSMutableArray类型 |
2.2 常用方法
NSMutableArray arrayWithCapacity:10] :初始化可变数组对象的长度,如果后面代码继续添加数组超过长度10以后NSMutableArray的长度会自动扩充,所以不用担心数组越界。
[array addObject:…] : 向可变数组尾部添加数据对象。
[array addObjectsFromArray:..] :向可变数组尾部添加一个数组对象。
array | 创建一个空数组 |
+(id)arrayWithCapacity:size | 创建一个数组,指定容量为size |
-(id)initWithCapacity:size | 初始化一个新分配的数组,指定容量为size |
-(void)addObject:obj | 将对象obj添加到数组末尾 |
-(void)insertObject:obj atIndex:i | 将对象 obj 插入到索引为 i 的位置 |
-(void)replaceObject:obj atIndex:i | 将数组中索引为 i 处的元素用obj 置换 |
-(void)removeObject:obj | 从数组中删除所有是 obj 的对象 |
-(void)removeObjectAtIndex:i | 从数组中删除索引为 i 的对像 |
-(void)sortUsingSelector:(SEL)selector | 用 selector 只是的比较方法将数组排序 |
最新文章
- git代码冲突解决
- 测试博文中添加可执行JS代码
- PHP实现简易的模板引擎
- iOS 网络与多线程--4.同步Post方式的网络请求
- S3C6410嵌入式应用平台构建(三)
- Android KitKat 4.4 Wifi移植之Wifi driver
- poj2236(并查集)
- 4、BufferedIn(out)putStream--->;字节输入/输出流的缓冲区类(高效类:高效率读写)
- Android - 读取XML文件中的数据
- JAVA之旅(二十一)——泛型的概述以及使用,泛型类,泛型方法,静态泛型方法,泛型接口,泛型限定,通配符
- 潭州课堂25班:Ph201805201 tornado 项目 第五课 增加用户系统-用户中心(课堂笔记)
- js如何判断数字是否有小数
- 阿里云Centos+Django+Nginx+uWSGI
- SQL Server 2012还原一直卡在ASYNC_IO_COMPLETION浅析
- BZOJ1823[JSOI2010]满汉全席——2-SAT+tarjan缩点
- mysql找到数据的存储位置
- TZOJ:玛祖游戏
- 计算机基础知识 一 Basic knowledge of computers One
- swift - UIScrollView 的使用
- cpu真实核数
热门文章
- Oracle 提示密码过期问题:the password will expire
- android slidingview
- poj 3792 Area of Polycubes
- IC卡接口芯片TDA8007的读写器设计
- win7系统如何恢复administrator用户
- 用Update Select批量更新某一字段的值[可以跨库]
- javascript实现的手风琴折叠菜单效果
- Java_.jar .war .ear 详解
- iOS中AutoLayer自动布局流程及相关方法【转】
- NSString属性什么时候用copy,什么时候用strong?【转】