gpt4 book ai didi

java - Interest Calculator 单利计算截断错误(涉及DecimalFormat)

转载 作者:行者123 更新时间:2023-11-30 09:32:01 25 4
gpt4 key购买 nike

我为一个执行单利和复利计算的学术项目编写了一个程序。我遇到的问题是,如果数字没有除零以外的其他东西作为“美分”(即,它不显示小数点——如果金额是例如 1750.00,它将显示高达 1750),尽管我在复利和单利的方法中都使用了 DecimalFormat!

我已经对项目进行了大量调试,但我真的不知道到底发生了什么。

程序的相关摘录如下:

  double p=1.0; // just some sample values for p, r, and y.
double r=2.0;
double y=3.0;
double calculatedInterest = p + (p*(r/100)*y);
String output = new String("Computed Simple Interest is: $");
output = output + new DecimalFormat("#.##").format(calculatedInterest);
return output;

我这里有完整的程序:

http://pastebin.com/sgg0P5ZQ

[编辑] 故事的寓意:如果您不阅读您遇到问题或不理解的类的 JavaDoc,您将度过一段糟糕的时光。符号模式 #.## 不仅仅是 DecimalFormat 的通用包罗万象,不同的符号模式做不同的事情。在我的例子中,必要的是将 #.## 更改为 0.00 以查看我想要的十进制数。非常感谢 jpe。

最佳答案

查看JavaDoc of DecimalFormat .您使用类似“#.##”的模式。 # 的文档说:

Symbol  Location    Localized?  Meaning 
# Number Yes Digit, zero shows as absent

您应该将您的模式替换为 0.00

关于java - Interest Calculator 单利计算截断错误(涉及DecimalFormat),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12658919/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com