Jes*_*ica 0 if-statement objective-c
我正在尝试这样做一个if语句:
if ([myString isEqualToString:@"string"] && myint == 3 || myint == 2) {...}
Run Code Online (Sandbox Code Playgroud)
基本上是什么,它确保它strings
是平等的.然后,要么myint
可以等于2或3.
当我尝试这样做时,我得到一个错误说'&&' withing '||'
.它建议在括号中加上括号,&&
如下所示:
if (([myString isEqualToString:@"string"] && myint == 3) || myint == 2)
Run Code Online (Sandbox Code Playgroud)
我的问题是,如果没有括号,为什么我不能这样做.括号做了什么?
实际上,你想要的是什么
if ([myString isEqualToString:@"string"] && (myint == 3 || myint == 2))
Run Code Online (Sandbox Code Playgroud)
括号做他们一直做的事情:他们确定操作的顺序,而不是将它留给操作员的优先级(你不太可能知道).