实现 isEqual 和 hash 方法时要注意什么?

实现 isEqual 和 hash 方法时要注意什么?
  • hash

对关键属性的hash值进行位或运算作为hash值

  • isEqual

==运算符判断是否是同一对象, 因为同一对象必然完全相同

判断是否是同一类型, 这样不仅可以提高判等的效率, 还可以避免隐式类型转换带来的潜在风险

判断对象是否是nil, 做参数有效性检查

各个属性分别使用默认判等方法进行判断

返回所有属性判等的与结果

作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:413038000,不管你是大牛还是小白都欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!

推荐阅读

iOS开发——最新 BAT面试题合集(持续更新中)

推荐阅读更多精彩内容