NSString:isEqual 与 isEqualToString [英] NSString: isEqual vs. isEqualToString

查看:38
本文介绍了NSString:isEqual 与 isEqualToString的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

isEqual:isEqualToString: 有什么区别?

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

Why are classes adding isEqualTo* methods (isEqualToArray for NSArray, isEqualToData for NSData, ...) instead of just overriding isEqual: ?

推荐答案

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

isEqual: compares a string to an object, and will return NO if the object is not a string. isEqualToString: is faster if you know both objects are strings, as the documentation states:

特殊注意事项

当您知道两个对象都是字符串时,此方法是比 isEqual: 更快的检查相等性的方法.

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

isEqualTo 用于提供特定的相等性检查.例如;isEqualToArray: 检查数组是否包含相同数量的对象,并且给定索引处的对象对于 返回 YESisEqual: 测试.

isEqualTo<Class> is used to provide specific checks for equality. For instance; isEqualToArray: checks that the arrays contain an equal number of objects, and that the objects at a given index return YES for the isEqual: test.

这篇关于NSString:isEqual 与 isEqualToString的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆