isEqualTo和isEqual之间的区别:
这些方法之间的区别究竟是什么?
isEqual:
是NSObject协议的一部分,用于比较对象。
isEqualTo:
是Cocoa AppleScript支持基础结构的一部分(具体来说, NSComparisonMethods允许AppleScript比较Cocoa对象)。 它通常与isEqual:
相同,但是如果您希望相等在内部和脚本中以不同的方式工作,则可以重写。
isEqualTo:
是NSComparisonMethods非正式协议的一部分,它也包含isGreaterThan:
和isNotEqualTo:
,并用于脚本支持。 和:
如果发送给同一对象的isEqualTo:消息返回YES,NSObject提供的此方法的默认实现返回YES。
所以当把这个消息发送给一个NSObject(或任何不覆盖它的子类)时,你会得到和isEqual:
一样的行为isEqual:
但是,你应该使用isEqual:
来代替。