基本语法-运算符-逻辑运算符

逻辑运算符

a b a&b a&&b alb allb !a a^b
true true true true true true fasle false
true false false false true true fasle true
false true false false true true true true
false false false false false false true false
  • &-逻辑与 &&-短路与

  • |-逻辑或 ||-短路或

  • !-逻辑非

  • ^-逻辑异或

【典型代码】

1. &与&&

①&逻辑与

boolean b1 = true;
	b1 = false;
	int num1 = 10;
	if(b1 & (num1++ > 0 )){
		System.out.println("我现在在北京");
	}else{
		System.out.println("我现在在南京");
	}
	System.out.println("num1 = " + num1);

②&&短路与

boolean b2 = true;
	b2 = false;
	int num2 = 10;
	if(b2 && (num2++ > 0 )){
		System.out.println("我现在在北京");
	}else{
		System.out.println("我现在在南京");
	}
	System.out.println("num2 = " + num2);

2. |与||

①|逻辑或

boolean b3 = false;
	b3 = true;
	int num3 = 10;
	if(b3 | (num3++ > 0 )){
		System.out.println("我现在在北京");
	}else{
		System.out.println("我现在在南京");
	}
	System.out.println("num3 = " + num3);

②||短路或

boolean b4 = false;
	b4 = true;
	int num4 = 10;
	if(b4 || (num4++ > 0 )){
		System.out.println("我现在在北京");
	}else{
		System.out.println("我现在在南京");
	}
	System.out.println("num4 = " + num4);

【特别说明】

1. 逻辑运算符操作的都是boolean类型的变量,而且结果也都是boolean类型

2. 区分&与&&,开发中推荐使用&&

  • 相同点
    ①&与&&运算结果相同
    ②当符号左边是true时,二者都会执行符号右边的运算
  • 不同点
    当符号左边是false时,&会继续执行符号右边的运算,&&不再执行符号右边的运算

3. 区分|与||,开发中推荐使用||

  • 相同点
    ①|与||运算结果相同
    ②当符号左边是false时,二者都会执行符号右边的运算
  • 不同点
    当符号左边是true时,|会继续执行符号右边的运算,||不再执行符号右边的运算
posted @ 2021-06-16 14:39  犄角旮旯是程序媛吖  阅读(121)  评论(0编辑  收藏  举报