NSArray和NSMutableArray相互转换, 以及常用方法-备
有时候项目中NSArray和NSMutableArray需要相互转化,下面给出相关代码
1.NSArray
1.1 转化:NSMutableArray
|
1
|
NSMutableArray *mutableArray = [NSMutableArray arrayWithArray:array]; // array为NSMutableArray类型 |
1.2 常用方法
| +(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 只是的比较方法将数组排序 |
NSArray和NSMutableArray相互转换, 以及常用方法-备的更多相关文章
- NSArray,NSMutableArray的一些常用方法
不可变数组 ——NSArray 常用的初始化一个数组: NSArray *array1 = [[NSArray alloc] init]; NSArray *array2 = ...
- NSArray和NSMutableArray的常用方法 (转)
NSArray和NSMutableArray的常用方法 (转) (2013-09-06 15:13:46) 标签: it 分类: ios编程 初始化方法: 1.init返回一个空数组 2.i ...
- iOS阶段学习第15天笔记(NSArray与NSMutableArray 数组)
iOS学习(OC语言)知识点整理 一.OC中的数组 1)数组:也是一个对象,数组中存放的是对象的地址,可以存放任意类型对象的地址,只能是对象不能是具体的数值,数组是有序的, 可以存放重复的元 ...
- IOS数组NSArray与NSMutableArray知识点
此文是对数组NSArray与NSMutableArray知识点的总结,主要是一些常见的操作,别外一些操作见其相应的文档,下面的代码部分还运用的第三方插件BlocksKit相结合: a:Foundati ...
- NSArray和NSMutableArray
//1. NSArray EOItems *eOItems = [[EOItems alloc] init]; eOItems.ID = [NSNumber numberWithInt:]; NSAr ...
- NSArray、NSMutableArray基本用法
NSArray.NSMutableArray基本用法 一.基本操作 初始化方法:1.init返回一个空数组 2.initWithArray从已有数组初始化 3.initWithContentsOfFi ...
- 15.Object-C--浅谈Foundation框架OC数组NSArray与NSMutableArray
昨天总结了一下NSString与NSMutableString,今天我在这里总结一下NSArray与NSMutableArray. NSArray数组是:不可变数组. nil 是数组元素结束的标记.O ...
- NSArray 与 NSMutableArray 的排序
由于集合的使用过程中,经常需要对数组进行排序操作,此博客用于总结对在OC中对数组排序的几种方法 1.当数组中存放的是Foundation框架中提供的对象时,直接使用 compare:方法 如:NSSt ...
- NSArray、NSMutableArray和NSMutableDictionary的用法
转自:http://www.cnblogs.com/wangpei/admin/EditPosts.aspx?opt=1 NSArray是静态的数组,就是它所指向的内容是不可改变的,它指向一段内存区域 ...
随机推荐
- 如何在Ubuntu安装*.exe文件
下载及安装 若你使用 Debian 或者 Ubuntu 之类的发行版,只需要一个命令即可完成安装: apt-get install wine 若你使用的为其他发行版,请访问 http://winehq ...
- 编译内核时出错:/bin/sh: 1: lzop: not found
http://www.deyisupport.com/question_answer/dsp_arm/sitara_arm/f/25/t/71477.aspx 在上面链接中,发现时缺少了 lzop 工 ...
- cf B. Flag Day
http://codeforces.com/contest/357/problem/B #include <cstdio> #include <cstring> #includ ...
- windows bat命令编写大全
1 echo 和 @ @ #关闭单行回显echo off #从下一行开始关闭回显 @echo off #从本行开始关闭回显.一般批处理第一行都是这个 echo on #从下一行开始打开回显 ec ...
- logstash 处理tomcat access报ArgumentError: comparison of String with 5 failed
<pre name="code" class="html"> 10.168.102.19 - - [22/Sep/2016:20:35:11 +08 ...
- 【转】Ubuntu命令行下安装、卸载、管理软件包的方法
原文网址:http://oss.org.cn/html/47/n-67447.html 一.Ubuntu中软件安装方法 1.APT方式 (1)普通安装:apt-get install softname ...
- 推荐2个小工具 .NET reflector resharper
- ZOJ3519-Beautiful People:最长上升子序列的变形
Beautiful People Special JudgeTime Limit: 10000/5000MS (Java/Others)Memory Limit: 128000/64000KB (Ja ...
- Bring it on
I am going to open a whole new English Blog here. Most blogs here would be computer technologies, in ...
- Java中判断集合类为空的方法
*****需要引入Spring的核心Jar包***** 工具类: org.springframework.util.CollectionUtils 方法: public static boolean ...