0
点赞
收藏
分享

微信扫一扫

【Java笔记】逻辑运算符&与&&,| 与 || 的使用区别

鲤鱼打个滚 2022-02-26 阅读 87

Java 逻辑运算符中有几个需要注意的细节,在此记录一下。

目录

区分& 与 &&(且)

区分 | 与 || (或者)


区分& 与 &&(且)

相同点1:& 与 && 的运算结果相同

相同点2:当符号左边是 true 时,二者都会执行符号右边的运算

不同点:当符号左边是 false 时,& 继续执行符号右边的运算,&& 不再执行符号右边的运算

class Test{
	public static void main(String[] args){
		boolean b1 = false;
		int num1 = 10;
		if(b1 & (num1++ > 0)){
			System.out.println("薇尔莉特·伊芙加登");
		}else{
			System.out.println("远坂凛");
		}
		System.out.println("num1 = " + num1);

		boolean b2 = false;
		int num2 = 10;
		if(b2 && (num2++ > 0)){
			System.out.println("薇尔莉特·伊芙加登");
		}else{
			System.out.println("远坂凛");
		}
		System.out.println("num2 = " + num2);
	}
}

>>> 远坂凛
    num1 = 11
    远坂凛
    num2 = 10

此处 num1 与 num2 的值并不相同,是因为逻辑运算符导致的

区分 | 与 || (或者)

相同点1:| 与 || 的运算结果相同

相同点2:当符号左边是 false 时,二者都会执行符号右边的运算

不同点:当符号左边是 true 时,| 继续执行符号右边的运算,|| 不再执行符号右边的运算

class Test{
	public static void main(String[] args){
		boolean b1 = true;
		int num1 = 10;
		if(b1 | (num1++ > 0)){
			System.out.println("薇尔莉特·伊芙加登");
		}else{
			System.out.println("远坂凛");
		}
		System.out.println("num1 = " + num1);

		boolean b2 = true;
		int num2 = 10;
		if(b2 || (num2++ > 0)){
			System.out.println("薇尔莉特·伊芙加登");
		}else{
			System.out.println("远坂凛");
		}
		System.out.println("num2 = " + num2);
	}
}

>>> 薇尔莉特·伊芙加登
    num1 = 11
    薇尔莉特·伊芙加登
    num2 = 10

此处与 上一节相同, num1 与 num2 的值并不相同,是因为逻辑运算符导致的

注:在开发中,我们会使用 && 和 || ,因为可以提高时间效率

举报

相关推荐

0 条评论