Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
310 views
in Technique[技术] by (71.8m points)

objective c - Getting an array of a property from an object array

I need to extract an array of a single property from a custom object array. eg.

@interface MyClass : NSObject 
{
    int sampleNumber;
    NSString *sampleName;
}

I have an array of MyClass instances called myArray. I want to then get an array of the sampleName strings. Is there a way to do it without stepping through the whole array like this:

NSMutableArray *stringArray;

for (MyClass *thisInstance in myArray) 
{    
    [stringArray addObject:thisInstance.sampleName];
}

I attempted to search for a similar question in Objective-C but found it only in the PHP and LINQ sections.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Use Key-Value Coding:

NSArray *stringArray = [myArray valueForKey:@"sampleName"];

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...