我有一组使用NSCoding和NSKeyedUnarchiver检索的缓存对象。这些有很多属性。
我现在需要检查我创建的对象的内容是否与数组中的任何缓存对象内容相同。 我当然无法使用containsObject检查对象的引用是否相等,但我可以检查它们的内容是否相同。我知道如何实现最终结果,但在这种情况下最佳做法是什么?我希望它花费尽可能少的时间。
请记住,如果所有属性都匹配,则对象才相同。
感谢您的时间!
答案 0 :(得分:3)
在课程上实施isEqual:
和hash
方法。 isEqual:
的实施应比较所有属性。
正确实施这两种方法后,您可以使用NSArray containsObject:
或NSArray indexOfObjects:
等收集方法。