Objective C中isEqualToString和operator ==有什么区别?

时间:2010-04-07 12:22:07

标签: objective-c

if(lyricsId == areleased.trackId)

{
  ----------;
  ----------;
}

当我使用上面的代码时,它没有进入那个循环所以,我使用了下面的代码,然后它进入了循环,我退出了。

if([lyricsId isEqualToString:areleased.trackId])
{
    ----------;
    ----------;

}

==和isEqualToString之间是否有任何区别。

2 个答案:

答案 0 :(得分:11)

lyricsIdarelease.trackId是(我推测)NSString*类型。 ==只是比较指针,即使它们的内容相同,它们通常也会不同。 isEqualToString方法比较它们的内容。

答案 1 :(得分:5)

==将比较指针(地址)的相等性,而isEqualToString:将比较一个字符串是否等于另一个。