java_day02_位运算符

位运算符:

是直接对二进制进行运算

运算符 运算 范例 结果
<< 左移 3<<2(3*2*2)向左移动2位 12
>> 右移 3>>1 (3/2)向右移动1位 1
>>> 无符号右移 -3>>>1 2147483646
& 3&2 2
| 5|6 4
^
~

取反码
1^5
~5
4
-6


左移:
左移运算,其意义就是*2,
原来的位向左边移动指定位数,低位补0,高位超出则丢弃

右移:
右移运算,其意义就是除以2
正数右移,低位丢弃,高位补0
负数右移,低位丢弃,高位补1

无符号右移:
不管是正数还是负数,其他移动,最高位都是补0,最低为丢弃
取反:
对二进制位,是0的,就取1,是1的就取0

你可能感兴趣的:(java养成记—java基础)