Cocoa-Objective-C中NSString的isEqual、isEqualToString、== 区别?

发布于 2016-11-10 11:12:33 字数 235 浏览 1186 评论 1

比较字符串地址和字符串内容:

    NSString *str1 = @"s1"; 
NSString *str2 = @"s1";
if (str1 == str2){
NSLog (@"str1 equals str2");
}else{
NSLog (@"str1 does not equal str2");
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

灵芸 2017-05-15 13:07:20

isEqual: 首先判断两个对象是否类型一致, 在判断具体内容是否一致,如果类型不同直接return no.如先判断是否都是 NSString,在判断string的内容。
isEqualToString: 这个直接判断字符串内容,当然你要确保比较的对象保证是字符串。
==应该是直接比较指向的地址吧(貌似apple没有说过推荐使用==来进行object的比较吧)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文