配列で最初のオブジェクトから終わりのオブジェクトに順番にそれぞれのオブジェクトにブロックを実行します。
返り値
- (void)enumerateObjectsWithOptions:
引数
(NSEnumerationOptions)opts
オプション
並列で処理
逆順で処理
(void (^)(id obj, NSUInteger idx, BOOL *stop))block
id obj
NSUInteger idx
BOOL *stop
フレームワーク
Foundation
クラス
NSArray
使用可能
参照
– enumerateObjectsUsingBlock:
– makeObjectsPerformSelector:
– makeObjectsPerformSelector:withObject:
例文
#pragma mark enumerateObjectsUsingBlock:(void (^)(id obj, NSUInteger idx, BOOL *stop))block -(void)method024 { NSArray *anArray = [NSArray arrayWithObjects:@"aaa",@"bbb",@"ccc",nil]; NSString *itemToFind = @"ccc"; __block BOOL foundIt = NO;//ブロック内で変更できるように__blockを付ける //配列anArrayにcccが含まれるかどうかを探す。 [anArray enumerateObjectsWithOptions:NSEnumerationConcurrent //並列 //NSEnumerationReverse //逆向き usingBlock:^(id s,NSUInteger idx,BOOL *stop){ if ([(NSString*)s isEqual:itemToFind]) { foundIt=YES; //見つけたらfoundItをYESに *stop=YES; //見つけたら検索をストップ } return; }]; NSLog(@"%s : %@", __FUNCTION__,foundIt?@"YES":@"NO"); //=>[OOOAppDelegate method024] : YES }