在C#中等效的Java三班制运算符(>>>)?

Nik*_*aos 30 c# java bitwise-operators

Java >>>运算符的等价物(在C#中)是什么?

(只是为了澄清,我不是指>><<运营商.)

Luc*_*ero 30

在C#中,你可以使用无符号整数类型,然后<<>>你的期望.移位运算符MSDN文档为您提供了详细信息.

由于Java不支持无符号整数(除此之外char),因此需要使用此附加运算符.


Mat*_*att 14

Java没有无符号左移(<<<),但不管怎样,你可以uint从那里转换为和shfit.

例如

(int)((uint)foo >> 2); // temporarily cast to uint, shift, then cast back to int
Run Code Online (Sandbox Code Playgroud)

  • 不需要 &lt;&lt;&lt; 因为符号扩展与左移无关。 (2认同)