如果任何一个 if else 语句为真,我如何运行代码?

问题描述 投票:0回答:3

哪个条件关键字将运行 如果 if else 语句之一运行并且它将运行?

示例:

int num = MyMathLibrary.random(1, 10);

if (num == 3){
    // do something
} else if (num == 7){
    // do something
} else if (num == 2){
    // do something
} runiftrue {
    // this "runiftrue" will run if any of if/else if statement is true
    // it means, if num = 3, or num = 7, or num = 2 it will run, but if num = 1 it will not run
}

在我使用这个之前:

int num = MyMathLibrary.random(1, 10);

boolean LastRun = false;


if (num == 3){
    LastRun = true;
    // do something
} else if (num == 7){
    LastRun = true;
    // do something
} else if (num == 2){
    LastRun = true;
    // do something
} 
    if (LastRun) {
        // this line of code will run if any of if/else if statement is true
        // it means, if num = 3, or num = 7, or num = 2 it will run, but if num = 1 it will not run
    }

但是这种方式确实不太聪明,而且需要很多时间来添加 “布尔 LastRun = true”。有没有更聪明、更简单、更清晰的方法来做到这一点?

java if-statement conditional-statements
3个回答
1
投票
  1. 条件不正确。如果是
    num==10
    ,那么它已经被
    num>3
    覆盖了。如果
    num> 3 or num<7
    基本上涵盖了宇宙中的所有情况,那么你假设
    if(LastRun)
    num==1
    时不会被执行,是错误的
  2. 本地 LastRun 变量将覆盖全局变量,并且条件
    if(LastRun)
    将永远不会被执行
  3. 假设您正确完成了上述所有事情,并且您正在 if elseif 部分与
    LastRun=true
    一起做一些额外的事情,
    LastRun=true
    将是有效的方法,因为您不必再次评估所有条件。如果你除了在 if else 中分配
    LastRun=true
    之外没有做任何其他事情,你可以有一个
    if(condition1 || condition2 || condition3){} 


    编辑:
  4. 正如 Gaurav Sharma 的回答,声明并初始化
    LastRun=true
    ,并在
    else
    中将其设置为 false

1
投票
#run a statement if one condition is true
import random

num = random.randint(1, 10)

condition = True

if (num > 3):
    print("Hello World")
    # do something
elif (num < 7):
    print("Hello World")
    # do something else
elif (num == 10):
    print("Hello World")
    # do something
else:
    condition = False

if(condition == True):
    print("Some statement was executed")

我希望这对你有用!!


0
投票

如果可以的话,将此逻辑拆分为一个函数。如果没有的话你可以返回。

void myFunction() {
    if (cond1) {
        // Cond1 stuff
    } else if (cond2) {
        // Cond2 stuff
    } else if (cond3) {
        // Cond3 stuff
    } else {
        // None of the conditions were true.
        return;
    }
    // At least one of Cond1, Cond2, and/or Cond3 was true.
}
© www.soinside.com 2019 - 2024. All rights reserved.