如何从 double 中删除科学记数法

How to remove scientific notation from double

我有一个具有 属性 双精度类型的 bean。当我将这个 bean 传递给视图层时,它以科学计数法显示值例如:9.78313E+10 而不是 97831300000。

我想要不带科学计数法的结果,而且我不能更改该字段的数据类型。如果有任何解决方法,请告诉我。

数字的显示方式取决于显示值的组件使用的格式。如果您无法访问该代码以使用不同的格式化程序;那你就无能为力了。

初学者请参阅 https://docs.oracle.com/javase/tutorial/java/data/numberformat.html

一个选项可能是:你能交换 bean 实现吗?所以不是提供 "double" 号码;您可以更改它以提供一个字符串吗(在这种情况下,您可以控制数字的格式)。

您可以将 printf()%f 一起使用:

System.out.printf("%.0f", value);

在这里您可以找到 Alvin Alexander 的精美 printf format cheat sheet,它可能对您(以及希望对其他人)有很大帮助。