具有OR条件的Objective-C IF语句

这个IF声明有什么问题?

if ([currentElement isEqualToString:@"aaa" || currentElement isEqualToString:@"bbb"]) 

XCode说:

 No visible @interface for 'NSString' declares the selector 'isEqualToString:isEqualToString:' 

如果可以提供帮助,我正在使用NSXML Parser过程,但我认为这不是问题所在。

您必须比较两个方法调用的结果:

 if ([currentElement isEqualToString:@"aaa"] || [currentElement isEqualToString:@"bbb"]) 

你实际编译的代码

 if ([currentElement isEqualToString:(@"aaa"||currentElement) isEqualToString:@"bbb"]) 

即编译器试图调用不存在的isEqualToString:isEqualToString: NSString方法