Java中的移位运算符



Java中的移位运算符.

在java中,我们可以对数据按二进制进行移位操作,java的移位运算符有三种:
左移: <<
右移: >>
无符号右移:>>
移位的相关规则:
左移后,最后一位补0
右移时,我们要看符号位,如果是1,移位后最高位添1
无符号右移时直接添0
移位运算符适用的数据类型:byte,short,char,int,long
低于int型的操作数,先自动转换为int型再移位
对于int型整数移位a>>b,系统先将b对32取模,得到的结果才是真正移位的位数
例如:a>>33等价于a>>1
对于long型整数a>>b,先将b对64取模
移位不会该表变量本身的值
一个数左移n位,就等于这个数乘以2的n次方
一个数右移n位,就等于这个数除以2的n次方