&运算
与运算:两边为1,结果为1
|运算
| :或 位运算,有一个为1,结果为1
^运算
两边不一样,就为1,否则为0
<<向左移位运算
这里我们就以2<<2为例;在二进制中我们向左移两位
向右移位
这里我们就以8>>2为例;在二进制中我们向右移两位
>>>无符号运算
正数的话是没得说的跟上面>>运算差不多 ,我们这里主要讲一下负数。
负数在Java中主要是以补码的形式存在,举一个例子
4 0000000 00000000 00000000 00000100
-4 是反码的补码
反码 11111111 111111111 111111111 111111011
补码 11111111 111111111 111111111 111111100
这个就表示-4,如果我们把-4向右移动2位;
00111111 111111111 111111111 111111111
然后我们在计算结果。