如果语句使用3个布尔值

时间:2015-10-21 18:40:24

标签: java if-statement boolean

我试图像这样制作一个if语句:

if(boolean1 AND boolean2 AND boolean3 == true){
   [Do this....]
}

有没有办法以这种格式做一个if语句,或者我必须这样做:

if(boolean1 = true & boolean2 = true ect...){}

4 个答案:

答案 0 :(得分:2)

是的,但你需要两个ID,Name,Price,Date '123','James','0.9832','04/01/2015' '345','Jacob','0.23412','05/01/2015' (s)用于逻辑和(一个是按位)。另外,一个等于赋值(你需要两个,或者没有)。像,

&

答案 1 :(得分:2)

至少你能得到的是

if(boolean1 && boolean2 && boolean3 &&..){

}

因为它们已经是布尔值,所以你不需要检查它们的价值。 Afaik,没有其他简单的方法。

如果你有太多太多,请创建一个数组并编写一个简单的util方法来检查是否有false

答案 2 :(得分:0)

没有必要与true进行比较(尽管有时候这对可读性来说很好):

if (boolean1 && boolean2 && boolean3) {...

答案 3 :(得分:0)

没有任何语法可以完全按照针对单个结果检查三个变量或语句的方式。值得注意的是,/^.+\./&&作为逻辑运算符与单词AND的所有正常使用都不匹配(例如,您无法使用{{{{}}检查& 1}}或boolean1 AND boolean2 AND boolean3 == false运算符)。

也就是说,评估&&会得到与&相同的结果。所以单调乏味的陈述

boolean1 == true

可以缩短为

boolean1

除非您有特殊原因要避免短路,否则建议您使用if(boolean1 == true & boolean2 == true & boolean3 == true){...} 代替if(boolean1 & boolean2 & boolean3){...} 。有关该主题的更多信息,请参阅Differences in boolean operators: & vs && and | vs ||