NSArray的4种遍历方式

前言:NSArray对应的是java的List,不同的是其元素不能更改,不过其派生类NSMutableArray可以更改,遍历的方式跟java的List基本一样

一.  for循环

Student *stu = [Student student];
NSArray *array = [NSArray arrayWithObjects:stu, @"1",@"2",nil];
int count = array.count;//减少调用次数
for( int i=0; i<count; i++){
    NSLog(@"%i-%@", i, [array objectAtIndex:i]);
}


二.  增强for

for(id obj in array){
    NSLog(@"%@",obj);
}


三.  迭代器

  
  
  
  
NSEnumerator *enumerator = [array objectEnumerator];
id obj = nil;
while(obj = [enumerator nextObject]){
NSLog(@"obj=%@",obj);
}

四.  Block块遍历

  
  
  
  
[array enumeratorObjectsUsingBlock:
^(id obj, NSUInteger index, BOOL *stop){
NSLog(@"%i-%@",index,obj);
//若终断循环
*stop = YES;
}];


参考:

http://blog.csdn.net/cherry609195946/article/details/20047377

你可能感兴趣的:(NSArray的4种遍历方式)