我使用此代码比较两个字符串:
NSComparisonResult result = [cellTitle compare:searchText options:(NSCaseInsensitiveSearch && NSLiteralSearch)];
但是xcode显示有关使用逻辑&&amp ;;的警告并提供按位&amp ;,按位和&比较不会返回正确的结果。
我该如何解决?
答案 0 :(得分:5)
您正在尝试组合位掩码的两个部分。您可以使用按位OR或XOR运算符,或者为此添加 - |
,^
或+
。标准是|
。
答案 1 :(得分:1)
你应该这样做:
NSComparisonResult result = [cellTitle compare:searchText
options:(NSCaseInsensitiveSearch | NSLiteralSearch)];
这些标志是二进制数,只有一组。因此,当您执行逻辑|时,您将获得两者的“混合”(例如:1000 | 0100 => 1100),这样您就可以将多个标志设置为选项。