Я в настоящее время настраивал веб-сервер, который я передаю по SOAP со своим приложением для iPhone. Я возвращаю строку, содержащую GUID и когда я пытаюсь сравнить это с другой строкой, я получаю некоторые странные результаты.
Почему это не стреляло бы? Конечно, две строки являются соответствием?
NSString *myString = @"hello world";
if(myString == @"hello world")
return;
Используйте метод -isEqualToString:
для сравнения значений двух строк. Использование оператора C ==
просто сравнивает адреса объектов.
if ([category isEqualToString:@"Some String"])
{
// Do stuff...
}
Вы можете использовать сравнение с учетом регистра или без учета регистра, в зависимости от того, что вам нужно. С учетом регистра:
if ([category isEqualToString:@"Some String"])
{
// Both strings are equal without respect to their case.
}
Без учета регистра:
if ([category compare:@"Some String" options:NSCaseInsensitiveSearch] == NSOrderedSame)
{
// Both strings are equal with respect to their case.
}