Ios NSMutable数组containsObject,它检查对象的内容还是对象类型?

Ios NSMutable数组containsObject,它检查对象的内容还是对象类型?,ios,nsmutablearray,Ios,Nsmutablearray,我对ContainesObject的工作原理有点困惑。它是否检查是否包含对象类型的实例,或者是否比较对象变量等的内部以查看它们是否匹配 这是一个实现细节,您可以根据它对每个项目调用isEqual:并对其结果进行处理 在引擎罩下,它可能会对每个项目调用散列,并进行比较,然后,如果散列匹配,它将调用isEqual:,以确保它是真正匹配的。返回一个布尔值,指示数组中是否存在给定的对象:它阅读文档,看看它应该做什么。但是两个对象相等意味着什么呢?相同类型还是所有变量都相同?例如,如果我有两个包含不同文本

我对ContainesObject的工作原理有点困惑。它是否检查是否包含对象类型的实例,或者是否比较对象变量等的内部以查看它们是否匹配

这是一个实现细节,您可以根据它对每个项目调用
isEqual:
并对其结果进行处理


在引擎罩下,它可能会对每个项目调用
散列
,并进行比较,然后,如果散列匹配,它将调用
isEqual:
,以确保它是真正匹配的。

返回一个布尔值,指示数组中是否存在给定的对象:它阅读文档,看看它应该做什么。但是两个对象相等意味着什么呢?相同类型还是所有变量都相同?例如,如果我有两个包含不同文本的消息对象,它们是否相等?这取决于您是否覆盖
isEqual
(和
hash
),如果您有特殊要求,则应该覆盖。IIRC默认实现只是比较指针(它不会对添加到类中的属性进行内省)。