У меня есть класс с доступным методом, который возвращает 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
.
Есть мысли?