如何从 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,它可能对您(以及希望对其他人)有很大帮助。
我有一个具有 属性 双精度类型的 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,它可能对您(以及希望对其他人)有很大帮助。