उल्लिखित 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]];
जो निर्दिष्ट वर्ग की वस्तुओं के सभी धारण करना चाहिए।
अस्वीकरण: परीक्षण नहीं किया गया है, क्षमा करें अगर कुछ गलत है:/
स्रोत
2010-08-22 04:28:32