比较obj-c中的两个字符串

时间:2012-12-05 16:13:51

标签: objective-c if-statement nsstring

  

可能重复:
  If “a == b” is false when comparing two NSString objects?

比较2个字符串的简单问题:

if (string1 == string2)
{
    NSLog(@"it is equal!");
}

这就是它,但它对我不起作用总是!= 我用string2 = string1;测试它,但它不起作用。

所以我测试if (string1 isEqualToString:string2),但在这种情况下会出现语法错误

感谢您的帮助!

关心柯蒂斯

2 个答案:

答案 0 :(得分:2)

==比较对象的地址,而不是它们的内容。两个不同的对象显然永远不会有相同的地址。

要比较字符串使用NSString的{​​{1}}方法:

isEqualToString:

注意方括号if ([string1 isEqualToString:string2]) { NSLog(@"it is equal"); } 。这是用于发送消息(即调用函数)的正确Objective-C语法。

要比较对象的内容,请使用[ ]

答案 1 :(得分:1)

使用if ([url isEqualToString:turl])。这是正确的语法,[]表示您正在向对象发送消息。