了解条件 - Java

时间:2015-08-10 15:02:14

标签: java if-statement

使用此示例的if条件是什么。

A - if true, B or C must also be true; Pass
    if false, B and C do not matter; Fail
B - if true, A must also be true and C can be false or true
    if false, A must be true and C must be true; Pass, else Fail
C - if true, A must also be true and B can be false or true
    if false, A must be true and B must be true; Pass, else Fail

我不知道如何设置它。以下是我认为if的样子:

//Not sure if the "or" needs to be double or single bar.
if(A && B | C){
   //pass    
}else{//fail}

这个逻辑的分解代码是这样的:

if(A){
   if(B|C){
      //PASS
   }else{//fail}
}else{//fail}

2 个答案:

答案 0 :(得分:3)

根据您使用的语言,它主要是||双杠。

我认为这会奏效:

if(A && (B || C)) {
     pass;
} else {
     fail;
}

这意味着如果A为真且B或C为真通过,否则失败。

答案 1 :(得分:2)

在Java中,btw单运算符和双运算符的区别在于双运算符(&&||)是短路的(即如果表达式的结果是预先确定的,则右侧不会被执行。

e.g。在这些情况下,永远不会调用foo()

false && foo(); // evaluates to false
true || foo(); // evaluates to true

但在这些情况下它会:

false & foo(); // still evaluates to false
true | foo(); // still evaluates to true