0

我处于需要计算类似 log(1/1400) 的情况。我在 java 中尝试过 Math.log 方法,但没有运气。实际上我们如何在java中计算这样的东西?我也尝试过 Math.log1p,因为它给出了 1+x 的对数值,其中 x 是一个小数字,一点运气都没有。但是当我们使用科学计算器时,我们可以轻松计算 log(1/1400) 或 ln(1/1400)。

4

2 回答 2

1

当除以 1/1400 时你得到 0,因为当参数是整数时 java 使用整数除法。

Math.log(((double) 1)/1400);
于 2018-04-14T06:46:05.927 回答
0

您可以使用它Math.log(double d)来计算所有大于 0 的实数的值。您的问题是,当您直接将整数除以整数时,您会执行整数除法。

double val = 1/1400;将评估为 0。 double val = ((double)1)/2;将评估为 0.5 的真实值。

于 2018-04-14T06:47:52.993 回答