NSArray *dataArray = [NSArray arrayWithObjects:@"this", @"is", @"a", @"cat", nil];
NSString *findString = @"cat";
[dataArray enumerateObjectsUsingBlock:^(id, object, NSUInteger index, BOOL*stop){
if([object localiedCaseInsensitiveCompare: findString] == NSOrderSame) {
*stop = YES;
}
}];
注释 : object 是从数组总枚举出的对象 , index是对象所对应的索引,*stop是用来控制block停止还是继续的变量,当 *stop == YES,就停止block。
NSSet的block没有index,因为它是无序的。
使用NSArray NSSet NSDictionary 内部的迭代器的一种重要好处是,处理其内容可在其在地方由其他开发人员来定。