码迷,mamicode.com
首页 > 其他好文 > 详细

OCFoundation框架集合 ---- NSArray和NSMutableArray

时间:2015-11-22 06:40:32      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:

1.NSArray :OC中使用的数组,是面向对象,并且是不可变数组。

   1.1OC数组不能存放nil值,只能存放OC对象、不能存放非OC对象类型,比如int、strcut、enum等;

   1.2 C数组  【缺点 : 数据的类型必须相同】

    int a = 3;  

    int number[5]  = {0,1,2,3,4}; 

   1.3 OC数组的创建 【保存的对象可以是不同的对象,但只能保存对象,需要转换成对象才能加入数组】

     NSArray *array = [NSArray array];   // 1.这个数组永远是个空数组

     NSArray *array1 = [NSArray arrayWithObject:@"lh"];  // 2.这个数组只有一个元素,并且永远只有一个元素

     NSArray *array2 = [NSArray arrayWithObjects:@"lh",@"r3",nil];  //3.多个数组实例化方式,以nil结尾,nil是数组元素结束的标记 

         NSArray *array3 = @[@"lh" , @"yg" , @"wy" , @"123"];   //快速创建一个NSArray对象

   1.4 对象方法[array count] ;     获取数组的长度(元素的个数)

             例子  :  NSLog(@"%ld" ,  array3.count] ;  //  4

        [array   objectAtIndex 1] ;  传入数组角标的id得到数据对象,使用索引访问。

          例子 : NSLog(@"%@", [array3 objectAtIndex:1];  // yg

        [array indexOfObject:obj] ;  // for in  遍历    

        [arrayWithObjects:..] ;   向数组对象初始化赋值,这里可以写任意对象的指针,结尾必须使用nil

 

   1.5 NSArray的遍历

    1.5.1 for循环遍历

          Person *p = [[Person alloc] init];    // 创建一个Person类的对象

      NSArray *array = @[p , @"hangda" , @"IOS"];  // 实例化数组

        NSUInterger  count = [array count];

       for(int i = 0 ; i < count; i++){

            NSLog(@"%ld --  %@", i , [array indexAtIndex:i]);

       }

           1.5.2 for  in 遍历

          for(id  obj  in  array){     // id 代表着数组中每一个元素对象

          NSUInter i = [array indexOfObject:obj];

            NSLog(@"%ld - %@",i,obj);

            // 提前结束遍历

               if(i == 1)

              {

                           break;

                       }

           }

      1.5.3

       

        

OCFoundation框架集合 ---- NSArray和NSMutableArray

标签:

原文地址:http://www.cnblogs.com/hangdada/p/4985197.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!