
面试高老师为您分享以下优质知识
二进制移位是指对二进制数进行水平方向的位移操作,通过改变位的位置来快速调整数值。移位运算符分为左移(``)两种类型,具体规则如下:
一、左移运算(`>
`):将二进制数整体向右移动指定位数,左侧空出的位置用0填充,高位丢弃。
带符号右移(`>
>
`):保留符号位,左侧空出的位置用原符号位填充(正数补0,负数补1)。
示例:`00010000 >
>
2` 结果为 `00000010`(十进制2),无符号右移;`10000000 >
>
2` 结果为 `11111111`(十进制-8),带符号右移。
三、注意事项
`byte`、`short`、`char`类型移位后结果自动提升为`int`类型。
实际移动次数取移位次数与32的余数(如移位33次等同于移位1次)。
移位运算在程序设计中常用于快速乘除(如左移n位相当于乘以2^n)、位掩码操作、数据压缩等场景。