如何在JAVA中对两个双打进行异或?
简单的'^'不适用于双打......我是否必须将双精度转换为二进制形式并按位进行?或者还有其他方式吗?
答案 0 :(得分:14)
如果你的意思是逐位地执行此操作,则需要使用Double
实用程序函数来获取long
表示,然后在最后转换回double:
double c = Double.longBitsToDouble(
Double.doubleToRawLongBits(a) ^ Double.doubleToRawLongBits(b));