逻辑运算符(LogicalOperator)

逻辑运算符(LogicalOperator)

概述:

逻辑运算就是表示两个数据之间组合后的或者、并且、非关系运算的符号

符号:

逻辑与 ( & ) :表示并且的关系

执行原则: 有假则假 全真则真 执行过程: 前后两者表达式的结果都要去执行,然后得到最终的结果

逻辑或 ( | ) :表示或者关系

执行原则: 有真则真 全假则假 执行过程: 前后两者表达式的结果都要去执行,然后得到最终的结果

逻辑非 ( ! ) :表示取反的关系

注意: 双重否定表肯定 例如: !! true —> true

为了提升逻辑与和逻辑或的执行效率出现了短路与和短路或

短路与 ( && ) :

执行过程: 如果第一个表达式的结果为false 第二个表达式不会执行得出最终结果false 如果第一个表达式的结果为true第二个表达式继续执行得出最终结果

短路或 ( || ) :

执行过程: 如果第一个表达式的结果为true第二个表达式不会执行得出最终结果true 如果第一个表达式的结果为false第二个表达式继续执行得出最终结果

代码示例:

public class LogicalOperatorDemo {
          
   
	
	public static void main(String[] args) {
          
   
		//  逻辑关系(true和false直接的逻辑组合关系)
		int num = 2;
		
		//逻辑或
		System.out.println(3 < 5  & true);// true 
		System.out.println(true   & false);// false 
		System.out.println(false  & num++ > 0);// false 
		System.out.println(false  & num++ < 0);// false
		System.out.println(num);// 4
		
		// 短路与 ( && )
		System.out.println(false  && num++ > 0);// false 
		System.out.println(false  && num++ < 0);// false
		System.out.println(num);// 4
		
		System.out.println("===============");
		
		//逻辑或
		System.out.println(3 < 5  | num++ > 0);// true 
		System.out.println(true   | num++ < 0);// true 
		System.out.println(false  | true);// true 
		System.out.println(false  | false);// false
		System.out.println(num);// 6
		
		// 短路或 ( || )
		System.out.println(3 < 5  || num++ > 0);// true 
		System.out.println(true   || num++ < 0);// true 
		System.out.println(num);// 6
		System.out.println("------------");

		// 逻辑非 ( ! )
		System.out.println(!true); // false
		System.out.println(!!(3 < 5)); // true  双重否定表肯定
	}
}
经验分享 程序员 微信小程序 职场和发展