我正在尝试将一些 Java 代码转换为 C#,到目前为止它一直运行良好,但我遇到了 ^ 运算符的问题。在 C# 中 Console.WriteLine(127 ^ 0xffffffff);
打印 4294967168 而在 Java 中 System.out.println(127 ^ 0xffffffff);
打印 -128。我一直在四处寻找,看看是否有其他我需要使用的东西,但我没有遇到任何东西。
最佳答案
C# 支持有符号和无符号整数(Java 只支持有符号):
unchecked {
// you want signed int
int result = (int) (127 ^ 0xffffffff);
Console.WriteLine(result);
}
关于java - C#按位异或(^)与Java按位异或(^)对比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32655750/