简介
java中移位运算符包括:左移运算符(<<),右移运算符(>>),无符号右移运算符(>>>),移位运算符操作的是对象的二进制位。
运算符 |
含义 |
<< |
左移运算符,将运算符左边的对象向左移动运算符右边指定的位数(在低位补0) |
>> |
“有符号”右移运算 符,将运算符左边的对象向右移动运算符右边指定的位数。如果是正数则高位补0,如果是负数则高位补1 |
>>> |
“无符号”右移运算 符,将运算符左边的对象向右移动运算符右边指定的位数。无论正负高位都为0 |
代码示例
1 2 3 4 5 6 7 8 9 10
| int negativeNun = -8,positiveNum = 8; System.out.println("----- <<左移运算符 ------"); System.out.println(negativeNun<<2); System.out.println(positiveNum<<2); System.out.println("----- >>右移运算符 ------"); System.out.println(negativeNun>>2); System.out.println(positiveNum>>2); System.out.println("----- >>>无符号右移运算符 ------"); System.out.println(negativeNun>>>2); System.out.println(positiveNum>>>2);
|
结果
1 2 3 4 5 6 7 8 9
| ----- <<左移运算符 ------ -32 32 ----- >>右移运算符 ------ -2 2 ----- >>>无符号右移运算符 ------ 1073741822 2
|