使用NSOrderedSame的目的是什么?

时间:2011-08-09 07:08:17

标签: objective-c

  

可能重复:
  Is there a difference between NSString compare: and isEqual(ToString):?

在下面的代码行中使用NSOrderedSame的目的是什么?

if([result caseInsensitiveCompare:@"ERROR"]==NSOrderedSame)
  

其中result是字符串变量。

1 个答案:

答案 0 :(得分:24)

Cocoa和Cocoa Touch中的比较方法返回比较对象应该如何排序,而不是只返回一个布尔值来告诉值是否相同。有三个值:

  • NSOrderedAscending:左操作数小于右操作数。
  • NSOrderedSame:两个操作数相等。
  • NSOrderedDescending:左操作数大于右操作数。

因此,您的代码只是检查result指向的字符串是否等于字符串“ERROR”,忽略大小写的差异(即“error”< / em>,“eRRoR”等都被认为等于“ERROR”)。