Java计算错误

时间:2014-11-28 23:50:22

标签: java textfield

我正在尝试创建一个程序来计算以下公式中的futureValue

             futureValue = investmentAmount × (1 + monthlyInterestRate)^years×12

这是一个可视化程序,它计算futureValue.Variables:investmentAmount monthlyInterestRate和years来自textfields.Here我的代码是这样的

public void Calculator(){
        double x = (Double.parseDouble(AnnualInterestRate.getText())/12) + 1;
        double y = Double.parseDouble(Years.getText()) * 12;
        double mult = Math.pow(x, y);

        double futureValue = Double.parseDouble(InvesmentAmount.getText()) * mult;
        lblNewLabel_3.setText("$" + String.format("%.2f",futureValue));

    }

这些值:  InvesmentAmount:1000  年:2  AnnualInterestRate:6.5 futureValue应该是1,138.43但是我的程序计算的futureValue是32491635,80

我看不出错误,如果有人能提供帮助那就太棒了。

1 个答案:

答案 0 :(得分:1)

如果您的用户应该以百分比形式输入利率,则需要将其除以100作为计算的一部分。 E.g。

double x = (Double.parseDouble(AnnualInterestRate.getText())/1200) + 1;

产出:$ 1138.43