Kotlin 位运算符 , >>与>>>区别

运算符 表示含义
and(bits) 按位与
or(bits) 按位或
inv(bits) 按位非
xor(bits) 按位异或
shl(bits) 左移运算符
shr(bits) 右移运算符
ushr(bits) 无符号右移运算符


java中>>(右移)和>>>(无符号右移)的区别

  1. >> 二进制码整体右移,左边符号位用原有符号位补上(正数为0 负数为1),右边超出部分舍弃;
  2. >>> 二进制码整体右移,左边符号位用0补上(不管是符号位是什么),右边超出部分舍弃;


java 与、或、非、异或( &、|、~、^)

1.与运算符 &

两个操作数中位都为1,结果才为1,否则结果为0

2.或运算符 |

两个位只要有一个为1,那么结果就是1,否则就为0

3.非运算符 ~

如果位为0,结果是1,如果位为1,结果是0

4.异或运算符 ^

两个操作数的位中,相同则结果为0不同则结果为1

你可能感兴趣的:(Kotlin 位运算符 , >>与>>>区别)