java中 >>> >>含义
每次看到H>>>2,这样的就容易混淆,到底是怎么进行位移的,今天在网上查了查,写个日志记下来,:
1、<<(左移)
运算规则:按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零。
左移n位,相当于乘以2的n次方
2、>>(带符号右移)
运算规则:按二进制形式把所有的数字向右移动对应位数,低位移出(舍弃),高位的空位补符号位,即正数补0,负数补1.
右移n位,相当于除以2的n次方
3、>>>(无符号右移)
运算规则:按二进制形式把所有的数字向右移动对应位数,低位移出(舍弃),高位的空位补0。其他结构和>>相似。
位移在编程语言中很方便来做2的幂运算