首页 > 编程语言 > 详细

OC-数组遍历的四种方法

时间:2014-12-24 17:47:19      阅读:357      评论:0      收藏:0      [点我收藏+]

数组遍历的四种用法

例:NSArray *array = @[@1,@2,@3,@4];

 

第一种方法--for循环

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

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

}

 

第二种方法--for循环增强版

//常用的是

for(NSString *str in array){

  NSLog(@"%@",str);

}

//万能的是

for(id obj in array){

  NSLog(@"%@",obj);

}

 

第三种方法--枚举器-迭代器

NSEnumerator *en = [array objectEnumerator];

NSString *str =nil;//如果不是字符串的话,也可以用万能   id obj;

while(str=[en nextObject]){

  NSLog(@"%@",str);

}

 

第四种方法--利用Block

 

//这个方法有要求,就是不能用在不可变数组

//NSArray *array = @[@1,@2,@3,@4];不可变数组是不对的

//创建一个可变数组

NSMutableArray *arr = [NSMutableArray arrayWithArray:@[@1,@2,@3,@4]];

[arr enumeratorObjectsUsingBlock:

^(id obj;NSUInteger idx;BOOL *stop){

  NSLog(@"%@",obj);

  if(idx==0){

  *stop=YES;

      }  

}];

 

 

注意点:大家都知道集合NSSet和数组NSArray有很多共同点,但是set是无序的,所以不能通过索引来获取元素,像这样的set[i],绝对错的

所以目前本人只用枚举器来遍历数组和集合

 

OC-数组遍历的四种方法

原文:http://www.cnblogs.com/wxios/p/4182784.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!