
使用block遍历元素的简明思路及实现
转出“博客园”,请您注明出处:http://www.cnblogs.com/xiaobajiu/p/4116503.html
NSArray这样的对象会有除了for遍历以外的block遍历方法如下:
[arr enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
//遍历每个元素
}];
[arr2 indexOfObjectPassingTest:^BOOL(id obj, NSUInteger idx, BOOL *stop) {
//..
}];
enumerateObjectsUsingBlock这样子的实现思路如下:
//
// QArray.m
//
#import "QArray.h"
@implementation QArray
- (void)enumeratQArrayWithBlock:(void(^)(id obj, NSUInteger idx, BOOL *stop))block
{
NSUInteger len= self.dataArr.count;
BOOL tStop = NO;
for(int i=0; i<len; i++){
if(tStop)
break;
block(_dataArr[i],i,&tStop);
}
}
@end