在JAVA中&和&有什么区别

发布网友

我来回答

1个回答

热心网友

在Java中,&和&&都是逻辑运算符,用于判断两边的表达式是否同时为真。它们的主要区别在于短路行为。

例如,在使用&运算符时,即使第一个条件不成立,也会继续执行第二个条件。考虑以下代码段:

public class Test2{
public static void main(String[] args){
int i=3;
if((i++>5)&(i++<9)){
System.out.println(i);
System.out.println("恭喜,执行完了条件语句!");
}
System.out.println(i);
}
}

在这个例子中,i的初始值为3,条件判断(i++ > 5)和(i++ < 9)都被执行了。即使第一个条件不成立,第二个条件依然被执行。

而在使用&&运算符时,如果第一个条件不成立,后面的条件将不会被检查。考虑以下代码段:

public class Test2{
public static void main(String[] args){
int i=3;
if((i++>5)&&(i++<9)){
System.out.println(i);
System.out.println("恭喜,执行完了条件语句!");
}
System.out.println(i);
}
}

在这个例子中,i的初始值为3,条件判断(i++ > 5)被执行后,发现不成立,因此后面的条件(i++ < 9)没有被执行。这使得i只自加了一次。

总结来说,&和&&的主要区别在于短路行为。&会继续执行所有条件,而&&会在第一个条件不成立时停止执行后续条件。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com