JAVA逻辑运算符示例详解:与、或、非、异或

JAVA逻辑运算符示例详解:与、或、非、异或

对比表

(仅左右语句都为真时为真)包括:逻辑与& 和 短路与&&(左右语句有一则或超过一则为真时为真)包括:逻辑或| 和 短路或||(取反,假时为真,真时为假)包括:逻辑非!
异或(左右相异时为真,左右相同时为假)包括:逻辑异或^
aba&ba&&ba|ba||b!aa^b
truetruetruetruetruetruefalsefalse
truefalsefalsefalsetruetruefalsetrue
falsetruefalsefalsetruetruetruetrue
falsefalsefalsefalsefalsefalsetruefalse

逻辑与
class LogicAnd{
	public static void main(String[] args){
		
		//区分& and &&
		//当符号左右都是boolean型变量时,&为逻辑与(无论何种情况,左右语句都执行)
		boolean b1 = false;
		int num1 = 10;
		if(b1&(num1++ >0)){
			System.out.println("逻辑与成立");
		}else{
			System.out.println("逻辑与不成立");
		}
		System.out.println("num1=" + num1);
		// 此时输出结果为
		// <<<逻辑与不成立
		// <<<num1=11
	}
}
短路与
class ShortAnd{
	public static void main(String[] args){
		
		//区分& and &&
		//&&为短路与(左语句为真则执行右语句,左语句为假则不执行右语句(因为左为假,与运算已不成立,此时短路与不执行右侧语句))
		boolean b2 = false;
		int num2 = 10;
		if(b2&&(num2++ >0)){
			System.out.println("短路与成立");
		}else{
			System.out.println("短路与不成立");
		}
		System.out.println("num2=" + num2);
		// 此时输出结果为
		// <<<逻辑与不成立
		// <<<num2=10
	}
}

逻辑或
class LogicOr{
	public static void main(String[] args){
		
		//区分| and ||
		//当符号左右都是boolean型变量时,|为逻辑或(无论何种情况,左右语句都执行)
		boolean b1 = true;
		int num1 = 10;
		if(b1|(num1++ >0)){
			System.out.println("逻辑或成立");
		}else{
			System.out.println("逻辑或不成立");
		}
		System.out.println("num1=" + num1);
		// 此时输出结果为
		// <<<逻辑或成立
		// <<<num1=11
	}
}
短路或
class ShortOr{
	public static void main(String[] args){
		
		// 区分| and |
		// ||为短路或(左语句为假则执行右语句,左语句为真则不执行右语句(因为左为真,或运算已成立,此时短路与不执行右侧语句))
		boolean b2 = true;
		int num2 = 10;
		if(b2&&(num2++ >0)){
			System.out.println("短路或成立");
		}else{
			System.out.println("短路或不成立");
		}
		System.out.println("num2=" + num2);
		// 此时输出结果为
		// <<<逻辑或成立
		// <<<num2=10
	}
}

逻辑非
class LogicNot{
	public static void main(String[] args){
		
		// 逻辑非 !
		boolean b = true;		
		if(!b){
			System.out.println("非b为真");
		}else{
			System.out.println("非b为假");
		}		
		// 此时输出结果为
		// <<<非b为假		
	}
}

异或

逻辑异或
class LogicXor{
	public static void main(String[] args){
		
		// 逻辑异或 ^
		boolean a = true;
		booleam b = false;
		if(a^b){
			System.out.println("a^b为真");
		}else{
			System.out.println("a^b为假");
		}		
		// 此时输出结果为
		// <<<a^b为真	
	}
}
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值