OC陣列 NSArray的4種遍歷方式
阿新 • • 發佈:2019-02-15
前言: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; }];