-6
我正在讀一些Java代碼,但我第一次看到這些符號,像「< < <」,」 < < = 「,」< <「。這些是什麼意思?像什麼意思的符號在java中「<<<」「<< =」「<<」
int buffer=8;
buffer <<= 1;
int x;
x >>> 24;
我正在讀一些Java代碼,但我第一次看到這些符號,像「< < <」,」 < < = 「,」< <「。這些是什麼意思?像什麼意思的符號在java中「<<<」「<< =」「<<」
int buffer=8;
buffer <<= 1;
int x;
x >>> 24;
這些是位移位運算符。見https://docs.oracle.com/javase/tutorial/java/nutsandbolts/op3.html:
簽署的向左移位運算符「< <」的位模式左移, 和簽名的右移位運算符「>>」移位的位模式的 權利。位模式由左側操作數給出,並且由右側操作數移位的位置數量爲 。右移位運算符「>>>」將零移動到最左邊的位置, ,而「>>」之後的最左邊位置取決於符號擴展。
<<=
是<<
的等效的,但分配更新值回到相同的變量(類似於+=
)。
延伸閱讀:https://en.wikipedia.org/wiki/Bitwise_operation#Bit_shifts
有沒有<< =符號?其他人則是位移操作員 –