1、左移运算符:<<
先随便定义一个int类型的数int,十进制的value = 10(1010)
value << 1,左移1位。 变成 10100(20),ps:int 32位,前面省略的全是0
value左移1位后换算成十进制的值为:20,刚好是10的两倍, 有些人在乘2操作时喜欢用左移运算符来替代。
ps:当int类型进行左移操作时,左移位数大于等于32位操作时,会先求余(%)后再进行左移操作。
规则:丢弃左边指定位数,右边补0。
2、右移运算符:>>
先随便定义一个int类型的数int,十进制的value = 1010
value >> 1,右移1位。 变成101(5),ps:int 32位,前面省略的全是0
右移1位后换算成十进制的值为:5,刚好是10的1半, 有些人在除2操作时喜欢用右移运算符来替代
规则:丢弃右边指定位数,左边补上符号位。
3、无符号右移运算符:>>>
无符号右移运算符>>的运算规则也很简单,丢弃右边指定位数,左边补上0。
即正数效果与>>相同,负数会变正数。