多个IF语句为true会导致问题

安东实验室

当多个IF语句条件为真时,我遇到问题。

我的情况,例如:

           if (B > A && B >= C && B > D && B> E )
           {
              while (h < B + 2)
              {
                 r.up();
                 h++;
              }
           }

           else if (D > A && D > B && D >= C && D > E )
           {
              while (h < D + 3)
              {
                 r.up();
                 h++;
              }
           }
           else if (C > A && C > B && C > D && C >= E )
           {
              while (h < C + 3)
              {
                 r.up();
                 h++;
              }
           }

这只是我实际代码的模板,因此看起来更具可读性。

由于还有A和E,因此代码中显然还有更多内容,但是我只考虑了其中的全部内容,以减少其乏味。

基本上,我想做的是根据哪个变量具有最高的值来增加“ h”。问题是,当2个变量具有相同的值(例如B和D均为7)时,代码根本无法工作。

希望您理解我要说的话,并感谢您的宝贵时间!

谢尔盖·卡里尼琴科(Sergey Kalinichenko)

您应该重新组织代码以使其更具可读性,并消除重复。但是首先,当一个以上变量的值最高时,您需要确定变量的优先顺序。

这是如何修改代码的草图:

// You may want to make a dedicated method for this
int max = Math.max(Math.max(A, B), Math.max(C, D));
int additional;
if (max == A) {
    additional = 2;
} else if (max == B) {
    additional = 3;
} else if (max == C) {
    additional = 1;
} else if (max == D) {
    additional = 2;
} else {
    throw new IllegalStateException();
}
while (h < max + additional) {
    r.up();
    h++;
}

想法是使用条件运算来计算最终值,但要在单个循环中进行增量。结果是没有重复循环的更干净的代码。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

多个IF语句为true会导致问题

来自分类Dev

如果多个IF语句为true,则更新

来自分类Dev

即使if语句为true,函数也会返回false

来自分类Dev

使用角度为8的无类型传单会导致问题

来自分类Dev

$ TERM设置为“哑”会导致挂起问题

来自分类Dev

在R中嵌套if语句-即使'if'语句为TRUE也会执行'else'语句

来自分类Dev

将代码移动到Debian导致“执行多个语句时使用multi = True”错误语句

来自分类Dev

即使“ if”语句在PHP中为true,其他语句也会运行

来自分类Dev

即使先前的“ if”语句为true,Python程序也会运行“ else”语句

来自分类Dev

在一个语句中初始化多个变量会导致NullReferenceException

来自分类Dev

在一个语句中初始化多个变量会导致NullReferenceException

来自分类Dev

一个存储过程中的多个DML语句会导致性能下降吗?

来自分类Dev

将allowdrop设置为true会导致.net应用程序中的内存泄漏

来自分类Dev

将多个ComboBox绑定到同一ItemsSource会导致问题

来自分类Dev

Strut2具有多个软件包会导致问题

来自分类Dev

使用 Spring MVC 在模型中添加多个属性会导致性能问题吗?

来自分类Dev

创建初始值为0的信号量会导致执行问题

来自分类Dev

为每个用户定义唯一常数是否会导致php中的性能问题?

来自分类Dev

在构造函数中为静态成员变量赋值会导致任何问题吗?(爪哇)

来自分类Dev

添加准备语句会导致警告

来自分类Dev

什么会导致“ BEGIN”语句的“交易空闲”

来自分类Dev

为单个订阅服务的多个进程会导致MQRC_SUBSCRIPTION_IN_USE

来自分类Dev

Android Studio 1.1.0设置minifyEnabled为true导致应用程序出现问题

来自分类Dev

多个NSURLSession导致UITableView问题

来自分类Dev

Terraform if语句为true或false

来自分类Dev

PHP多个IF比较在单个IF语句中设置为TRUE或FALSE的2个或3个变量

来自分类Dev

捕捉CTRL + V会导致问题

来自分类Dev

在Eclipse上安装EGit会导致问题

来自分类Dev

角度2:* ngFor会导致CSS问题

Related 相关文章

  1. 1

    多个IF语句为true会导致问题

  2. 2

    如果多个IF语句为true,则更新

  3. 3

    即使if语句为true,函数也会返回false

  4. 4

    使用角度为8的无类型传单会导致问题

  5. 5

    $ TERM设置为“哑”会导致挂起问题

  6. 6

    在R中嵌套if语句-即使'if'语句为TRUE也会执行'else'语句

  7. 7

    将代码移动到Debian导致“执行多个语句时使用multi = True”错误语句

  8. 8

    即使“ if”语句在PHP中为true,其他语句也会运行

  9. 9

    即使先前的“ if”语句为true,Python程序也会运行“ else”语句

  10. 10

    在一个语句中初始化多个变量会导致NullReferenceException

  11. 11

    在一个语句中初始化多个变量会导致NullReferenceException

  12. 12

    一个存储过程中的多个DML语句会导致性能下降吗?

  13. 13

    将allowdrop设置为true会导致.net应用程序中的内存泄漏

  14. 14

    将多个ComboBox绑定到同一ItemsSource会导致问题

  15. 15

    Strut2具有多个软件包会导致问题

  16. 16

    使用 Spring MVC 在模型中添加多个属性会导致性能问题吗?

  17. 17

    创建初始值为0的信号量会导致执行问题

  18. 18

    为每个用户定义唯一常数是否会导致php中的性能问题?

  19. 19

    在构造函数中为静态成员变量赋值会导致任何问题吗?(爪哇)

  20. 20

    添加准备语句会导致警告

  21. 21

    什么会导致“ BEGIN”语句的“交易空闲”

  22. 22

    为单个订阅服务的多个进程会导致MQRC_SUBSCRIPTION_IN_USE

  23. 23

    Android Studio 1.1.0设置minifyEnabled为true导致应用程序出现问题

  24. 24

    多个NSURLSession导致UITableView问题

  25. 25

    Terraform if语句为true或false

  26. 26

    PHP多个IF比较在单个IF语句中设置为TRUE或FALSE的2个或3个变量

  27. 27

    捕捉CTRL + V会导致问题

  28. 28

    在Eclipse上安装EGit会导致问题

  29. 29

    角度2:* ngFor会导致CSS问题

热门标签

归档