在Java中对两个双打进行异或

时间:2010-11-18 02:22:26

标签: java bit-manipulation

如何在JAVA中对两个双打进行异或?

简单的'^'不适用于双打......我是否必须将双精度转换为二进制形式并按位进行?或者还有其他方式吗?

1 个答案:

答案 0 :(得分:14)

如果你的意思是逐位地执行此操作,则需要使用Double实用程序函数来获取long表示,然后在最后转换回double:

double c = Double.longBitsToDouble(
    Double.doubleToRawLongBits(a) ^ Double.doubleToRawLongBits(b));