Если «a == b» имеет значение false при сравнении двух объектов NSString

У меня есть класс с доступным методом, который передает обратноNSString когда звонили.

[MyClass getMyString]

Строковая переменная в этом классе фактически назначается вdidSelectRowAtIndexPath: часть таблицы, как это:

myString = cell.textLabel.text;

Когда я получаю строку, вызывая этот метод, я назначаю ее другой строке в классе, который вызвал ее, и сравниваю ее со строкой, которую я определил.

NSString *mySecondString;
mySecondString = @"my value";

if(mySecondString == myString){
    i = 9;
}

Я прошел через код и каждый раз, когда он оценивает оператор if, он пропускает сразуi=9 и идет к следующемуelse if заявление. С чего бы это? Почему они не оценивают одинаковую ценность? Если вы наведите курсор на каждое из значений во время отладки, они покажут, что они имеют одинаковое значение, но код по какой-то причине не делает, как я ожидаю, он сделает и назначит9 вi.

есть идеи?

Ответы на вопрос(5)

Ваш ответ на вопрос