Java的位运算(bitwise operators)直接对整数类型的位进行操作,这些整数类型包括long、int、short、char和 byte,位运算符具体如下表:
|
package com.nemo.jvm.day1;
/**
*
* 位移运算
*
* @author tanyouhao
*
*/
public class BinaryMove {
public static void main(String[] args) {
int a = (3 & 5);
System.out.println(a);
System.out.println(Integer.toBinaryString(3));
System.out.println(Integer.toBinaryString(5));
System.out.println();
int b=(-3>>1);
System.out.println(b);
System.out.println(Integer.toBinaryString(-3));
System.out.println(Integer.toBinaryString(-2));
System.out.println();
int c=(-3<<1);
System.out.println(c);
System.out.println(Integer.toBinaryString(-3));
System.out.println(Integer.toBinaryString(-6));
System.out.println();
int d=(-3>>>1);
System.out.println(d);
System.out.println(Integer.toBinaryString(-3));
System.out.println(Integer.toBinaryString(2147483646));
}
}
结果:
1
11
101
-2
11111111111111111111111111111101
11111111111111111111111111111110
-6
11111111111111111111111111111101
11111111111111111111111111111010
2147483646
11111111111111111111111111111101
1111111111111111111111111111110