В чем разница между isEqualToString и оператором == в Objective C? - PullRequest
7 голосов
/ 07 апреля 2010
if(lyricsId == areleased.trackId)

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

когда я работаю с приведенным выше кодом, он не входит в этот цикл. Итак, я использовал приведенный ниже код, затем он вошел в цикл, и я вышел из положения.

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

}

Есть ли разница между == и isEqualToString.

Ответы [ 2 ]

11 голосов
/ 07 апреля 2010

lyricsId и arelease.trackId относятся (я полагаю) к типу NSString*. == просто сравнивает указатели, которые обычно будут разными, даже если их содержимое одинаково. Метод isEqualToString сравнивает их содержимое.

5 голосов
/ 07 апреля 2010

== будет сравнивать равенство указателей (адресов), а isEqualToString: будет сравнивать, если одна строка равна другой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...