<<(左移)、>>(带符号右移)和>>>(无符号右移) >>>(无符号右移) 按二进制形式把所有的数字向右移动对应位数,低位移出(舍弃),高位的空位补零。对于正数来说和带符号右移相同,对于负数来说不同。 其他结构和>>相似。
/**
* 输出一个int的二进制数
* @param num
*/
private static void printInfo(int num){
System.out.println(num);
System.out.println(Integer.toBinaryString(num));
}
测试用例
//原始数二进制
printInfo(4);
printInfo(4<<1);//4向左移动一位
printInfo(4<<2);
// 4
// 100
// 8
// 1000
// 16
// 10000
printInfo(4);
printInfo(4>>1);//4向右移动一位
printInfo(4>>2);
// 4
// 100
// 2
// 10
// 1
// 1
printInfo(5);
printInfo(5>>1);
printInfo(5>>2);
// 5
// 101
// 2
// 10
// 1
// 1