java.lang.Math
文档说的许多功能,如Math.pow
:java.lang.Math是否在“ULP内”独占或包含?
计算结果必须是内准确结果的1 ulp。
但我一直没能找到这是什么意思。它是独占的还是包容性的?换句话说,如果精确的结果可以用double表示,那么返回的值是否包含精确的结果,或者它可能仍然是1 ULP?
例如,我们可以依靠Math.pow(3.0, 2.0) == 9.0
吗?我知道使用平等比较对于双打来说几乎总是一个坏主意,所以我主要是出于好奇心,并且当他们做那样的事时能够指出人们的错误(或让他们放心)。
哦,我不知道读书时我是多么怀念那部分。无论如何,这完全回答了这个问题。我已经编辑了一下。 –