我在JavaEE中有一个简单的数学计算类,其结果与在线java计算器不同。例如,网站JavaCalc给我正确的结果,即0.0009。但是,对于我来说,在我的Java程序中,结果为9.xxx。以上网址使用的数学公式:(0.5) * ((0.85724038)-(0.779))/((40.32173718)-(0.779))Java等式:Total_Score = (0.5) * ((T) - (N)) / ((ME) - (N));其中:T = 0.85724038N = 0.779M = 40.32173718我很困惑,为什么当两个方程式相同时答案是不同的。
2 回答
![?](http://img1.sycdn.imooc.com/545862aa0001f8da02200220-100-100.jpg)
慕村225694
TA贡献1880条经验 获得超4个赞
如果要实际以非科学计数法显示数字,则可以使用format
:
String.format("%.Xf", yourNumHere);
X
小数位数在哪里显示。如果您希望它显示到小数点后9位,则格式字符串为"%.9f"
。
![?](http://img1.sycdn.imooc.com/545847f50001126402200220-100-100.jpg)
弑天下
TA贡献1818条经验 获得超8个赞
计算结果相同,但显示方式不同。我的输出是
9.893141646194965E-4
,表示0.0009xxxxx。“ E”代表科学计数法,E-4表示将小数点向左移动四(因此变为0.0009xxxxxxxxxx)。也可以写成9.893141646194965 * 10 ^ -4。它们是相同的值,但是我想System.out.println()
如果更易于阅读,则会将数字转换为科学计数法。Java将这些值解释为相同的值。
添加回答
举报
0/150
提交
取消