逻辑运算符和位运算符的深度解析 2021-05-16

Posted 超霸霸

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了逻辑运算符和位运算符的深度解析 2021-05-16相关的知识,希望对你有一定的参考价值。

  • 逻辑运算符
  1. &&(与):逻辑与运算,两个都为真则为真
  2. ||(或):逻辑或运算,有一个为真则为真
  3. ~(非):取反运算
  • 短路运算

有如下代码:

public class test {
    public static void main(String[] args) {
        int a=2;
        boolean x=(a<1)&&(a++<5);
        System.out.println("a = "+a);
        System.out.println("x = "+x);
    }
}

输出结果为:

a = 2
x = false

所以当逻辑与运算左边为false时,右边将不会被执行,这就称为短路运算

  • 位运算符
  A = 0011 1100
  B = 0000 1101
---------------
A&B = 0000 1100  (按位与运算,都为1则为1)
A|B = 0011 1101  (按位或运算,有一个1则为1)
A^B = 0011 0001  (按位异或运算,相同则为0,不同则为1)
 ~B = 1111 0010  (按位取反运算)
---------------
<<(左移运算符):相当于*2
>>(右移运算符):相当于/2

位运算的效率极高!!!

以上是关于逻辑运算符和位运算符的深度解析 2021-05-16的主要内容,如果未能解决你的问题,请参考以下文章

我的Java——逻辑运算符和位运算符

逻辑运算和位运算

5月31号 JAVA基础语法 逻辑运算符和位运算符

5月31号 JAVA基础语法 逻辑运算符和位运算符

java的布尔运算符和位运算符

位操作符和位运算