Kotlin 位运算符 , >>与>>>区别
2020-08-23 本文已影响0人
椰子
运算符 | 表示含义 |
---|---|
and(bits) | 按位与 |
or(bits) | 按位或 |
inv(bits) | 按位非 |
xor(bits) | 按位异或 |
shl(bits) | 左移运算符 |
shr(bits) | 右移运算符 |
ushr(bits) | 无符号右移运算符 |
java中>>(右移)和>>>(无符号右移)的区别
-
>>
二进制码整体右移,左边符号位用原有符号位补上(正数为0 负数为1),右边超出部分舍弃; -
>>>
二进制码整体右移,左边符号位用0补上(不管是符号位是什么),右边超出部分舍弃;
java 与、或、非、异或( &、|、~、^)
1.与运算符 &
两个操作数中位都为1,结果才为1,否则结果为0
2.或运算符 |
两个位只要有一个为1,那么结果就是1,否则就为0
3.非运算符 ~
如果位为0,结果是1,如果位为1,结果是0
4.异或运算符 ^
两个操作数的位中,相同则结果为0,不同则结果为1