Java如何使用右移“ >>”运算符?

有符号的右移运算符>>将一个位模式右移。该运算符使用两个操作数进行操作,左操作数要移位,右操作数告诉要移位多少位置。

1000使用>>运算符2的位置移动位图将产生0010位图。带符号的右移运算符产生的结果等于将数字除以2。

package org.nhooo.example.fundamental;

public class SignedRightShiftOperator {
    public static void main(String[] args) {
        // 32的二进制表示为
        // "00000000000000000000000000100000"
        int number = 32;
        System.out.println("number       = " + number);
        System.out.println("binary       = " + Integer.toBinaryString(number));

        //使用右移运算符将位移位
        //向右四次产生结果
        //“ 00000000000000000000000000000010”
        int shiftedRight = number >> 4;
        System.out.println("shiftedRight = " + shiftedRight);
        System.out.println("binary       = " +
                Integer.toBinaryString(shiftedRight));
    }
}

代码段的结果:

number       = 32
binary       = 100000
shiftedRight = 2
binary       = 10