当前位置: 移动技术网 > IT编程>移动开发>IOS > OC数组的简单使用、NSArray

OC数组的简单使用、NSArray

2018年09月05日  | 移动技术网IT编程  | 我要评论

ca1594,济南广告公司,恶魔王子的微笑天使

  和上一篇文章一样,数组的重要性不言而喻,在oc编程的过程中我们会不断的使用到nsarray,和c语言不同的是,我们这里的数组只能存oc对象类型,不能存c语言基本数据类型,也不能存nsnull类型,但是我们这里的数组可以存多种对象类型,比如,在同一个数组里面,既可以存字符串类型,又可以存对象化了以后的整数类型,甚至是另外一个数组,也可以存其他的对象类型(将c语言的数据类型转换成oc的对象类型下面会讲到),不过在同一个数组里面尽量存同一种数据类型,这是为了方便使用。在oc数组里面以nil表示结尾,如果你在数组的中间存了一个nil的数据,那么在nil后面的数据是读取不到的。

  和nsstring一样,数组可以分为可变数组(nsmutablearray)和不可变数组(nsarray),首先,我们还是从不可变数组说起,因为可变数组只是在不可变数组上加上了一些新的方法。

一、不可变数组

1.不可变数组的创建

2.访问数组的对象个数可以使用count属性,回忆一下,在字符串中访问字符串的长度我们使用的是length属性。

3.获取某个对象的索引值使用方法:indexofobject

4.获取某个索引值对应的对象使用方法:objectatindex

5.判断数组是否包含某个对象使用方法:containsobject

6.获取数组第一个元素:arr[0]

           [arr objectatindex:0]

           [arr firstobject]

7.获取数组最后一个元素:[arr lastobject]

二、可变数组

  可变数组相对于不可变数组和可变字符串相对于不可变字符串类似,都增加了一些方法和属性,最主要的就是增、删、改、插入。

1.创建可变数组

2.向可变数组里面增加一个对象使用方法:addobject

3.在可变数组里面删除对象:

  [removeobject:@"xianggang"];

        [ar removeobject:@"bj"];

        [ar removeobjectatindex:1];

        [ar removeallobjects];

4.更换数组里面的一个对象

  [ar exchangeobjectatindex:0 withobjectatindex:1];

5.插入一个对象

  [ar insertobject:@"bj" atindex:1];

三、封装(即类型转换)

1.将c语言基本数据类型封装为oc对象类型我们使用的是nsnumber;如:

nsnumber *number = [nsnumber numberwithint:20];

nsnumber *number1 = [nsnumber numberwithfloat:20.0];

2.将c语言的结构体和枚举封装了oc对象类型需要使用nsvalue;如:

struct cgrect{

          cgpoint point;

          cgsize size;

        };

 

 struct cgpoint {

 

         cgfloat x;

 

         cgfloat y;

 

         };

 

         

 

        struct cgsize {

 

            cgfloat width;

 

            cgfloat height;

 

        };

 

         */

 

        cgrect rect = cgrectmake(100, 100, 200, 150);

 

        nsvalue *rectvalue = [nsvalue valuewithrect:rect];

  

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网