配列で最初のオブジェクトから終わりのオブジェクトに順番にそれぞれのオブジェクトにブロックを実行します。
- (void)enumerateObjectsWithOptions:(NSEnumerationOptions)opts usingBlock:(void (^)(id obj, NSUInteger idx, BOOL *stop))block
解説
返り値
void
なし
引数
(NSEnumerationOptions)opts
block
返り値 void (^)
id obj
NSUInteger idx
BOOL *stop
フレームワーク
Foundation
クラス
NSArray
使用可能
iOS 4.0以降
参照
– enumerateObjectsUsingBlock: – makeObjectsPerformSelector: – makeObjectsPerformSelector:withObject:
例文
#pragma mark NSArray enumerateObjectsWithOptions:usingBlock: -(void)method024 { NSArray *anArray = @[@"aaa",@"bbb",@"ccc"]; 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 }