Если lastStringFromRecievedData
является экземпляром NSString
(или подклассом, таким как NSMutableString
), то это правильный способ сравнения двух строк. В этом случае что-то еще может привести к тому, что ваши строки не будут равны.
Однако, похоже, lastStringFromRecievedData
- это какой-то другой объект, потому что вы вызываете setString:
для него. Если это так, вам нужно сначала получить строку из этого объекта.
stringFromRecievedData =
[[NSString alloc]initWithData:_data1 encoding:NSUTF8StringEncoding];
// Assuming 'string' is the function to get the string from 'setString:' below
NSString *otherString = [lastStringFromRecievedData string];
if (![stringFromRecievedData isEqualToString:otherString]) {
[lastStringFromRecievedData setString: stringFromRecievedData];