Java中的位运算

public static void main(String[] args) {
    int a = 5;
    int b = 3;

//    00000000 00000000 00000000 00000101 ~>5
//    00000000 00000000 00000000 00000011 ~>3
//    00000000 00000000 00000000 00000001 5&3~>1
    System.out.println(a&b); // 遇0则0,不相同就为0

//    00000000 00000000 00000000 00000101 ~>5
//    00000000 00000000 00000000 00000011 ~>3
//    00000000 00000000 00000000 00000111 5|3~>7
    System.out.println(a|b); // 遇1则1

//    00000000 00000000 00000000 00000101 ~>5
//    00000000 00000000 00000000 00000011 ~>3
//    00000000 00000000 00000000 00000110 5^3~>6
    System.out.println(a^b); // 1^1=0   0^0=0    1^0=1    0^1=1

    int c = 10;
//    00000000 00000000 00000000 00001010
//    (00)00000000 00000000 00000000 000010[10]
//    00000000 00000000 00000000 00000010
    System.out.println(c>>2); // 右移

//    00000000 00000000 00000000 00001010
//    [00]000000 00000000 00000000 00001010(00)
//    00000000 00000000 00000000 00101000
    System.out.println(c<<2); // 左移
  }

 

你可能感兴趣的:(JAVA,java,位运算)