OC中==与isEqual
Posted yibinpan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OC中==与isEqual相关的知识,希望对你有一定的参考价值。
其实==就是判断两个变量里的值是否相等,OC中也就是判断两个变量中的指针的值是否相等,抽象地理解就是判断两个指针是否指向同一个对象。
当对象的isEqual方法不被重写时,==与isEqual等价,也就是如果两个指针相等,那么它们就指向同一个对象。
如果isEqual方法被重写了,那么这时候==与isEqual就不同了,用isEqual方法判断相等的两个对象就有可能不是同一个对象。
一个注意点是重写isEqual方法的话需要同时重写hash方法(hash方法在很多容器的勒类中用到,如NSDictionary等,这个对象做key的时候用来计算哈希值)。
以上是关于OC中==与isEqual的主要内容,如果未能解决你的问题,请参考以下文章