我有一个iOS应用程序,有几个不同的if语句。不管Xcode有什么问题,它总是说我的代码永远不会被执行.这太傻了..。这只是一个假设,一个地球是如何无法执行的。
基本上,我的if语句正在检查ID整数,其中一些数字会产生相同的结果,因此我的if语句正在检查多个数字。
这是我的代码:
if (num == (200 || 201 || 202 || 210 || 211 || 212 || 221 || 230 || 231 || 232)) {
// Run image type 1 setup here...
}
else if (num == (300 || 442 || 881 || 882 || 890 || 900)) {
// Run image type 2 setup here....
}else-if语句继续进行。但是由于一些奇怪的原因,Xcode实际上认为我的代码不会被执行。
地球在这里做了什么错事?
谢谢丹。
发布于 2015-05-20 20:02:50
if (num == (200 || 201 || 202 || 210 || 211 || 212 || 221 || 230 || 231 || 232))与以下声明相同:
if (num == x)其中x为:
(200 || 201 || 202 || 210 || 211 || 212 || 221 || 230 || 231 || 232)因此,您编写的测试与以下测试相同:
if(num == 1)这也是else if的主题。因为else if不能是真,除非if是真,所以它永远不会被执行。
基于case语句失败的事实,可以使用以下示例开关语句来执行您想要的操作:
switch(num) {
case 200: case 201: case 202: /* ... etc ... */ case 232:
// image type 1 here
break;
case 300: case 442: /* ... etc ... */
// image type 2 here
break;
}https://stackoverflow.com/questions/30359236
复制相似问题