因此,我对Java还是很陌生,并且当前正在尝试创建一个驱动程序类,该类将使用我的Mortgage类来计算抵押。我的所有工作正常,除了我的输出没有将结果格式化为两位小数(0.00),即使我那里有代码。这是我的驱动程序代码:
Mortgage mortgage1 = new Mortgage(annualInterestRate, numOfYears, loanAmount);
DecimalFormat df = new DecimalFormat("0.00");
JOptionPane.showMessageDialog(null, "Your Monthly Payment is: "
+ mortgage1.monthlyPayment() + "\n" + "Your Total Payment is: " +
mortgage1.totalPayment());
它工作得很好,可以输出正确的数字,但是格式不正确。感谢您的帮助。
最佳答案
好吧,您实际上根本没有使用df
。您需要将调用monthlyPayment()
和totalPayment()
的结果传递给format
方法。例如:
Mortgage mortgage1 = new Mortgage(annualInterestRate, numOfYears, loanAmount);
DecimalFormat df = new DecimalFormat("0.00");
JOptionPane.showMessageDialog(null,
"Your Monthly Payment is: "
+ df.format(mortgage1.monthlyPayment()) + "\n"
+ "Your Total Payment is: "
+ df.format(mortgage1.totalPayment()));
关于java - 如果使用单独的类,如何用DecimalFormat格式化结果?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29105229/