阅读有关NSSet
的说明文件:
当顺序为时,您可以使用集合作为数组的替代 元素在测试对象时是否重要和性能 包含在集合中是一个考虑因素。
这正是我所需要的,因为性能对我来说非常重要。
所以我覆盖了最终将在NSSet中填充的类中的哈希。
- (NSUInteger)hash
{
return [[self recordDate] hash];
}
换句话说,在我的情况下,recordDate总是唯一的,我希望在这里有独特的哈希值。
根据文档,似乎我在NSSet / NSMutableSet中查找对象的唯一方法是通过谓词。
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"recordDate == %@", recordDate];
NSSet *objectsWithDesiredWeek = [mySet filteredSetUsingPredicate:predicate];
我不确定,如果我没有忽略某些东西。这是在NSSet中查找对象的最有效方法吗?是不是像Key / Value这样的东西?
答案 0 :(得分:0)
我想我不明白这个问题。 NSSet有内置方法containsObject。为什么这不符合你的需要?