<<1(左移1位)相当于乘以2;>>1(右移1位) 相当于除以2
public static void main(String[] args) {
// << : 左移运算符, << 1,相当于乘以2
// >> : 右移运算符, >> 1,相当于除以2
// >>> : 无符号右移,忽略符号位,空位都以0补齐
int a = 10;
// 原始数二进制
System.out.println(a);
System.out.println(Integer.toBinaryString(a));
System.out.println("============================");
// 左移一位 ,相当于num乘以2
a = a << 1;
System.out.println(a);
System.out.println(Integer.toBinaryString(a));
System.out.println("============================");
// 右移一位 ,相当于num除以2
a = a >> 1;
System.out.println(a);
System.out.println(Integer.toBinaryString(a));
System.out.println("============================");
}
//打印结果:
//10
//1010
//============================
//20
//10100
//============================
//10
//1010
//============================
本文通过一个简单的Java示例详细介绍了位运算中的左移(<<)和右移(>>)操作符的使用方法及其等效的数学运算——乘以2和除以2。通过对整型变量进行位操作,直观展示了位运算符如何改变二进制表示,并提供了运行结果以加深理解。

1188

被折叠的 条评论
为什么被折叠?



