Как упоминалось в jtbandes, вы можете написать метод NSArray
в качестве категории, если вы собираетесь делать это много.Примерно так:
@interface NSArray (FindClass)
- (NSMutableArray *) findObjectsOfClass:(Class)theClass
@end
затем
@implementation NSArray (FindClass)
- (NSMutableArray *) findObjectsOfClass:(Class)theClass {
NSMutableArray *results = [[NSMutableArray alloc] init];
for (id obj in self) {
if ([obj isKindOfClass:theClass])
[results addObject:obj];
}
return [results autorelease];
}
@end
, затем, когда вы хотите использовать его, просто выполните:
NSMutableArray *objects = [myArray findObjectsOfClass:[FooType class]];
, который должен содержать все объектыуказанный класс.
Отказ от ответственности: не проверено, извините, если что-то не так: /