阅读 Javadocs,我看到 Math.E 是“比任何其他值都更接近自然对数的底数的 double 值。”。 Math.E 的打印值为 2.718281828459045,而 Math.exp(1.0) 的值应该是相同的值:2.7182818284590455(最后多了一个 5)。
从文档中,听起来 Math.E 中的位已“手动调整”以更接近 e 的实际值,而不是 Math.exp(1.0) 产生的计算。这是正确的,还是我错误地阅读了文档?
如果这是正确的,那么使用 Math.pow(Math.E, n) 是否比 Math.exp(n) 更准确,还是更少?我已经用谷歌搜索并搜索了 SO,但在这个特定问题上找不到任何东西。
最佳答案
16位小数的实际值为2.7182818284590452; 2 比 5 更接近 0,因此常数更接近。
请注意,在使用任一数字进行浮点计算时,您的答案的浮点表示中的错误很可能会导致您主要使用哪个数字 无关紧要。
关于java - 哪个更准确? java.lang.Math.E 或 Math.exp(1.0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12374763/