Java中的移位运算符

2014-11-24 10:17:09 · 作者: · 浏览: 0

移位运算符是在数字的二进制形式上进行平移。主要有左移(<<)、带符号右移(>>)以及无符号右移(>>>)。




-32


-2


1073741822


值得注意的移位运算其实可以看做对类型的位数取余后的移位。java中int是32位,long是64位。比如对int型的数字做左移40位的操作,与左移40%32=8位效果是相同的。若对int型做移位32*n的运算,则相当于什么都没做。


而对于byte、char以及short,在做移位运算时会自动类型转换成int型。因此对于下面的代码,输出为8 8 8 8 0