我正在尝试根据特定的付款金额(高于正常金额)来计算贷款剩余时间的等式。
等式是:
nRemaining = ((-log(1-(interestRate / 12) * value2 / value3)) / (log (1+ (interestRate / 12))));
现在显然这不起作用,因为我不确定如何输入对数。
答案 0 :(得分:4)
只要满足一些条件,您的代码就可以正常工作:
如果您 以这种方式使用log
,请将此语句放在您的班级上方:
import static java.lang.Math.log;
否则,请在Math.log()
的其他任何地方使用log
。
从技术上讲,您不必在java.lang
中导入任何内容,但这被称为静态导入 - 只应该偶尔执行,并且允许您编写更清晰的语句。
确保所有的值均为double
类型。否则,您将获得整数除法,这可能会导致NaN
出于某些原因而无法理解。
答案 1 :(得分:2)
您可能想要使用的几种内置对数方法:Math.log,Math.log10,Math.log1p。