1。位移位運算子
2。移位運算子的一般語法
值
值>> num-bits:將值位往右移動,保留符號位。
值>> num-bits:將值位向右移動,左側插入零。
3。向左移動
- 每次左移都會導致該值的所有位元向左移動一位。
- 右側插入了 0 位。
- 效果:每次位移將數值乘以 2。
4。往右移動
- 每次右移都會將所有位元向右移動一位。
- 保留符號位元:0 表示正值,1 表示負值。
- 效果:每個班次將數值除以 2,向下捨去。
5。向右移動無訊號(>>)
- 無符號位元保存;在左側插入 0。
- 用於位元模式,其中值被視為無符號數字。
6。位移不是旋轉
範例:
左移和右移
*Shift示範 *
移動位元組和短值時要小心
- 在計算表達式時,Java 會自動將 byte 和 Short 提升為 int。
範例:
- 將負位元組值右移:提升為 int 時,高位元填入 1。
- 當使用零填充右移時 (>>),這可能會導致問題,因為在零開始出現之前,前 24 位將為 1。
位元運算子的縮寫賦值
- 所有二元位元運算子都有一種簡寫形式,將賦值與位元運算結合。
範例
x = x ^ 127;
x ^= 127;
以上是移位運算子與位元簡寫賦值的詳細內容。更多資訊請關注PHP中文網其他相關文章!