分类: iOS 2014-02-27 14:01 6473人阅读 评论(0) 收藏 举报
前言:NSArray对应的是java的List,不同的是其元素不能更改,不过其派生类NSMutableArray可以更改,遍历的方式跟java的List基本一样
一. for循环
[objc] view plaincopy在CODE上查看代码片派生到我的代码片
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
[objc] view plaincopy在CODE上查看代码片派生到我的代码片
for(id obj in array){
NSLog(@"%@",obj);
}
三. 迭代器
[objc] view plaincopy在CODE上查看代码片派生到我的代码片
NSEnumerator *enumerator = [array objectEnumerator];
id obj = nil;
while(obj = [enumerator nextObject]){
NSLog(@"obj=%@",obj);
}
四. Block块遍历
[objc] view plaincopy在CODE上查看代码片派生到我的代码片
[array enumeratorObjectsUsingBlock:
^(id obj, NSUInteger index, BOOL *stop){
NSLog(@"%i-%@",index,obj);
//若终断循环
*stop = YES;
}];
|
|