objective-c - NSString:isEqual 与 isEqualToString

isEqual:isEqualToString: 有什么区别?

为什么类添加 isEqualTo* 方法(isEqualToArray 用于 NSArray,isEqualToData 用于 NSData,...)而不是仅仅覆盖 isEqual:

最佳答案

isEqual:将字符串与对象进行比较,并将返回 NO如果对象不是字符串。 isEqualToString:如果您知道两个对象都是字符串,则速度会更快,如 documentation状态:

Special Considerations

When you know both objects are strings, this method is a faster way to check equality than isEqual:.

isEqualTo<Class>用于提供特定的相等性检查。例如; isEqualToArray: 检查数组是否包含相同数量的对象,以及给定索引处的对象是否返回 YES对于isEqual:测试。

https://stackoverflow.com/questions/1292862/

相关文章:

objective-c - 如何在运行时使用 Objective-C 动态创建选择器?

objective-c - 如何在 NSString 中找到最后一次出现的子字符串?

ios - 文档 Main.storyboard 需要 Xcode 8.0 或更高版本

ios - 如何检查 UILabel 是否被截断?

objective-c - 将 writeToFile :atomically: overwrite

objective-c - 如何将 NSInteger 转换为 int?

objective-c - 循环遍历 NSMutableDictionary

iphone - 向下移动 UITabBarItem 图像?

objective-c - presentViewController : crash on iOS

objective-c - Xcode 版本 (CFBundleShortVersionString