首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果语句代码警告-代码永远不会执行- iOS

如果语句代码警告-代码永远不会执行- iOS
EN

Stack Overflow用户
提问于 2015-05-20 19:57:11
回答 1查看 8.6K关注 0票数 0

我有一个iOS应用程序,有几个不同的if语句。不管Xcode有什么问题,它总是说我的代码永远不会被执行.这太傻了..。这只是一个假设,一个地球是如何无法执行的。

基本上,我的if语句正在检查ID整数,其中一些数字会产生相同的结果,因此我的if语句正在检查多个数字。

这是我的代码:

代码语言:javascript
复制
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实际上认为我的代码不会被执行。

地球在这里做了什么错事?

谢谢丹。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-20 20:02:50

代码语言:javascript
复制
if (num == (200 || 201 || 202 || 210 || 211 || 212 || 221 || 230 || 231 || 232))

与以下声明相同:

代码语言:javascript
复制
if (num == x)

其中x为:

代码语言:javascript
复制
(200 || 201 || 202 || 210 || 211 || 212 || 221 || 230 || 231 || 232)

因此,您编写的测试与以下测试相同:

代码语言:javascript
复制
if(num == 1)

这也是else if的主题。因为else if不能是真,除非if是真,所以它永远不会被执行。

基于case语句失败的事实,可以使用以下示例开关语句来执行您想要的操作:

代码语言:javascript
复制
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;
}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30359236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档