在逻辑运算中&&和&的异同点:
格式: 逻辑表达式1 &&(或&) 逻辑表达式2
相同点:
当逻辑表达式1和逻辑表达式2中有一个为false时,输出false,否则输出true。
不同点:
&&参与逻辑运算时,当逻辑表达式1为false时,直接输出,对逻辑表达式2不再执行。
&参与逻辑运算时,逻辑表达式1和逻辑表达式2都会被执行。
案例代码
下面代码,我分别演示了&&和&的相同点和不同点,相同点,我只用&&演示了(&同理)。
public class Test {
public static void main(String[] args) {
//定义变量
int i = 2;
int j =3;
//相同点:
//逻辑表达式1和逻辑表达式2同时为true
boolean b = (i == 2)&&(j++ == 3);
System.out.println(b);//true
//逻辑表达式1为true;逻辑表达式2为false
boolean b1 = (i == 3)&&(j == 2);
System.out.println(b1);//false
//逻辑表达式1为false;逻辑表达式2为true
boolean b2 = (i == 3)&&(j == 3);
System.out.println(b2);//false
//逻辑表达式1和逻辑表达式2同时为false
boolean b3 = (i == 3)&&(j == 2);
System.out.println(b3);//false
//不同点:
//对&&进行测试
boolean b4 = (i == 3)&&(j++ == 3);
System.out.println(b4); //false
System.out.println(j); //3
//对&进行测试
boolean b5 = (i == 3) & (j++ ==3);
System.out.println(b5); //false
System.out.println(j); //4
}
}