【问题标题】:Getting an array of a property from an object array从对象数组中获取属性数组
【发布时间】:2011-06-04 09:14:23
【问题描述】:

我需要从自定义对象数组中提取单个属性的数组。例如。

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

我有一个名为 myArray 的 MyClass 实例数组。然后我想获得sampleName 字符串的数组。有没有办法做到这一点,而无需像这样遍历整个数组:

NSMutableArray *stringArray;

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

我试图在 Objective-C 中搜索类似的问题,但只在 PHP 和 LINQ 部分找到。

【问题讨论】:

  • 我修正了MyClass 声明中的一个错字:您需要将sampleName 声明为NSString * 而不是NSString。我还将foreach 替换为for。
  • 谢谢,我回来编辑发现你已经回答了:)

标签: objective-c cocoa cocoa-touch nsarray


【解决方案1】:

使用Key-Value Coding:

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

【讨论】:

  • 非常感谢@Bavarious,尤其是快速响应。我花了更长的时间来测试它而不是你回答它。我喜欢这个论坛!
猜你喜欢
  • 1970-01-01
  • 2022-10-19
  • 2015-04-05
  • 1970-01-01
  • 1970-01-01
  • 2018-11-28
  • 2012-04-05
  • 1970-01-01
相关资源
最近更新 更多