java移位運(yùn)算規(guī)則是什么

小億
103
2023-08-28 21:44:36

Java中的移位運(yùn)算規(guī)則如下:

  1. 左移運(yùn)算符(<<):將操作數(shù)的所有位向左移動(dòng)并用0填充右側(cè)空位。移動(dòng)的位數(shù)由右側(cè)的操作數(shù)指定。例如,對(duì)于表達(dá)式a << b,將a的所有位向左移動(dòng)b個(gè)位置。

  2. 右移運(yùn)算符(>>):將操作數(shù)的所有位向右移動(dòng)。如果操作數(shù)是正數(shù),則用0填充左側(cè)空位;如果操作數(shù)是負(fù)數(shù),則用1填充左側(cè)空位。移動(dòng)的位數(shù)由右側(cè)的操作數(shù)指定。例如,對(duì)于表達(dá)式a >> b,將a的所有位向右移動(dòng)b個(gè)位置。

  3. 無(wú)符號(hào)右移運(yùn)算符(>>>):將操作數(shù)的所有位向右移動(dòng)。無(wú)論操作數(shù)是正數(shù)還是負(fù)數(shù),都用0填充左側(cè)空位。移動(dòng)的位數(shù)由右側(cè)的操作數(shù)指定。例如,對(duì)于表達(dá)式a >>> b,將a的所有位向右移動(dòng)b個(gè)位置。

需要注意的是,移位運(yùn)算符對(duì)于操作數(shù)的位數(shù)沒(méi)有限制。如果移動(dòng)的位數(shù)超過(guò)了操作數(shù)的位數(shù),則結(jié)果是未定義的。

0