double数据类型不分配大值

时间:2013-06-08 04:09:59

标签: double variable-assignment

我正在尝试为double数据类型分配一个大值,例如

加倍 someValue = 36028797018963967D ;

但问题是,当我调试变量 someValue 的值时,它变为 36028797018963968D ,我无法找出原因。

任何帮助将不胜感激,

谢谢!

1 个答案:

答案 0 :(得分:0)

这两个数字在64位浮点中都是相同的。打印的内容是用于打印它们的方法的工件。试试这个:

assert(36028797018963967D == 36028797018963968D)

有效!