是否有可能建立甚至粗略地说明在
java(加/减)中处理两个double值时最大精度损失是多少?可能最坏的情况是两个数字无法准确表示,然后对它们执行操作,这导致一个也无法准确表示的值.
解决方法
看一下
Math.ulp(double)
.双精度的ulp是下一个最高值的delta.例如,如果您添加到数字而一个小于另一个的ulp,则您知道添加将不起作用.如果乘以两个双精度数,则可以乘以它们的ulps以获得结果的最大误差.