Java位移运算
发布时间
阅读量:
阅读量
Java语言中的移位运算主要包括三种形式,分别是左移(<<)、右移(>>)以及带符号右移(>>>)。
在进行移位运算时,其操作对象为整型数据。当对byte、char、short等类型的数据进行操作时,系统会将其自动转换为int类型。对于正数而言,转换过程中高位会补0;而对于负数,则会在高位补1。
1.左移运算
i<<n表示将i对应的二进制数值向左移动n位,其中左侧的n个高位会被舍弃,并在右侧低位补入n个零。
例如:1<<2
1对应的二进制形式为:0000 0000 0000 0000 0000 0000 0000 0001
在左移两位之后变为:0000 0000 0000 0011 1111 1111 1111 1111
最终结果为4
请参阅以下代码
public static void main(String[] args) {
int i = 1;
System.out.println(i<<2);
System.out.println(i<<(2 + 32));
byte b = -2;
System.out.println(b<<31);
}
输出结果为
全部评论 (0)
还没有任何评论哟~
