nsarray中自定义对象NSString属性的唯一值

时间:2010-10-24 04:00:17

标签: objective-c ios nsarray nsset

我有一个存储自定义对象的数组。 对象的类型为Venue,其属性定义为name(包含场所的名称)。

现在我想过滤掉具有唯一名称的对象。

这就是我试图做的事情。

NSSet *uniqueVenuesSet = [NSSet setWithArray:[venueArray valueForKey:@"name"]];

NSMutableArray *uniqueVenues = [[NSMutableArray alloc] initWithArray:[uniqueVenuesSet allObjects]];

我运行时遇到此错误。

    -[NSCFString name]: unrecognized selector sent to instance 0x69a6190
2010-10-24 09:25:31.832 [75790:207]  Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSCFString name]: unrecognized selector sent to instance 0x69a6190'

任何人都可以给我一个关于如何去做的指针。

1 个答案:

答案 0 :(得分:1)

这是因为NSString中至少有一个venueArray个对象。

确保venueArray中的每个元素都属于Venue类型。