什么是对条件语句使用布尔值的更好方法

时间:2014-01-10 08:22:23

标签: java

我有一个布尔变量isExists。我需要检查isExists是否为真,然后我必须执行一些操作,否则我需要执行其他操作。我可以像下面这样编写条件代码

方法-1

if(isExists){
//perform use previous interest
}else{
//create new interest
}

方法-2

if(true == isExists){
//perform use previous interest
}else{
//create new interest
}

在一些书籍中使用方法2,而在其他书籍中使用方法-1。

这两种方法检查布尔值的条件语句

之间有什么区别?

8 个答案:

答案 0 :(得分:3)

if(isExists)这就够了,意思十分充实。

if(true == isExists)在这里,您再次使用isExist boolean检查true。不需要冗余。

答案 1 :(得分:1)

在java中,如果你的变量是原始的'boolean'而不是文件,但如果它是布尔类的对象,请注意NPE
以下代码可能导致NPE Boolean b = null; // Not a primitive boolean.
if(b) {
System.out.println("It is true");
}else
System.out.println("It is false");

答案 2 :(得分:0)

if(isExists){
//perform use previous interest
}else{
//create new interest
}

就够了。这是一个布尔变量的优势。如果您只有一个要检查,只需指定名称即可。

答案 3 :(得分:0)

两种方法的结果都是一样的。

但是,使用前者通常被认为是更好的形式,原因有两个:

  • isExists本身就是boolean值 - 无需计算另一个
  • 当大声朗读(或在你脑海中)时,前appraoch似乎更自然

答案 4 :(得分:0)

if(isExists)

因为它默认情况下将true赋值给变量

答案 5 :(得分:0)

换句话说,

它只是一个条件评估。 boolen是boolen是一个布尔值。所以,你不要再将boolean(true)与true进行比较,以找出天气是真还是假。 它并没有受到伤害,因为编译器没有抱怨,但它没有区别。

答案 6 :(得分:0)

版本1更易读,特别是如果我们将名称更改为exists

if (exists) {
...

答案 7 :(得分:0)

  

如果(条件)

检查条件是否为真。基本上它会这样做(即如果你的布尔值为真):

  

if(condition == true) - > if(true == true)通过读取布尔值

因此对于布尔值,它将获取它的值并将其与true进行对比。你的两种方法都很好,但是通常使用第一种方法,因为布尔值以这样的方式命名,表达了一个满足的条件。