Occasionally I find code which tests if two NSString
s are the same like this:
if ([str1 compare:str2] == NSOrderedSame) {
// Do something
}
Now, I believe this is less readable than using isEqualToString:
and it also has some nasty side effects, like if str1 == nil
the if(..) evaluates to true, or when str2 == nil
havoc might break upon us according to the Apple docs.
But before I crusade against those statements in my companys code, I wanted to make sure I didn't miss some important point.
So my question basically boils down to: Is there any difference between a compare:
to NSOrderedSame
and isEqual:
?