Java中的移位運算符包括左移運算符(<<)、右移運算符(>>)和無符號右移運算符(>>>)。
左移運算符(<<)將一個數的二進制表示向左移動指定的位數,移出的位將被丟棄,右側用0填充。
右移運算符(>>)將一個數的二進制表示向右移動指定的位數,移出的位將被丟棄,左側用符號位填充。如果該數為正,則左側用0填充;如果該數為負,則左側用1填充。
無符號右移運算符(>>>)將一個數的二進制表示向右移動指定的位數,移出的位將被丟棄,左側用0填充。
移位運算符的使用方式如下:
int a = 10;
int b = a << 2; // 左移2位,相當于將二進制表示的a向左移動2位
int c = a >> 1; // 右移1位,相當于將二進制表示的a向右移動1位
int d = a >>> 3; // 無符號右移3位,相當于將二進制表示的a向右移動3位,并用0填充左側的空位
注意:移位運算符只能用于整數類型(byte、short、int和long),無法用于浮點數類型。