NSSet如何比较数组中的值以在使用SetWithArray时删除重复项

时间:2012-03-23 13:14:04

标签: objective-c nsarray duplicates nsset

我有NSArray,我想从中删除重复项。我知道使用这种方法     [NSSet setWithArray:[arrAllValues valueForKey:@“value”]] 我也知道它调用valueForKey参数中指定的方法。但我不知道NSSet调用什么方法来比较数组中的对象。     我的问题是我想比较名为“value”的属性,但我想返回包含属性而不是属性的对象的数组。我能这样做吗?

谢谢!!!

1 个答案:

答案 0 :(得分:1)

使用NSObject protocol reference方法对它们进行比较:

- (BOOL)isEqual:(id)anObject

因此,您可以在类中重写此方法以实现所需的行为,就像您在Java中一样,您还应该覆盖哈希。