Mar*_*gal 3 c# java operations bit-manipulation
Java有运营商>>>和<<<,它们与>>和<<有点不同 - 任何人都可以在C#中给我它的等价物吗?
最简单(或至少是最符合逻辑)的等价物实际上是对等效的无符号类型的未经检查的强制转换,然后是正常的转换,然后可能再次抛出:
// To perform int result = x >>> 5;
int x = -10;
uint u = unchecked ((uint) x);
u = u >> 5;
int result = unchecked ((int) u);
Run Code Online (Sandbox Code Playgroud)
(当然,如果你处于检查环境中,那么未经检查的部分才是相关的.)
根据我的经验,您通常希望>>>在Java中使用的时间,您只需使用无符号类型在C#中开始.