java - 显示普通( double )而不是科学数字 - MVC 应用程序

标签 java thymeleaf

我知道如何格式化像 9.78313E+10 这样的 double 值,使其在 Java 中显示 97831300000。

但是我有一个 MVC 应用程序,并且在 View 部分有一个用于 double 的 getter:

<td>
    <input type="number" step="0.00000001" th:placeholder="'Current: '+  *{product.getTop()}" name="top"/>
</td>

我的问题是 View 现在显示 9.78313E+10。

解决方法是为该对象设置第二个 getter,将其格式化为字符串,然后返回它。

有没有更优雅的方法来使用 Thymeleaf 解决这个问题?

最佳答案

Thymeleaf 确实提供了一个功能来帮助您格式化数字。请查看formatDecimal官方文档.

String formatDecimal(Number target, Integer minIntegerDigits, Integer decimalDigits) 

第一个参数是您想要格式化的数字。第二个参数是整数部分要显示的最小位数,第三个参数是小数部分要显示的最大位数。因此,在您的示例中,您希望将 9.78313E+10 格式化为 97831300000, #numbers.formatDecimal(9.78313E+10, 11, 0) 确实做到了这一点。

关于java - 显示普通( double )而不是科学数字 - MVC 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45755374/

相关文章:

java - 如何在onClickListener中传递接口(interface)的引用

java - 期间.仅减去天数

java - HashMap Java 无法显示多个值

java - 如何在管理页面将用户添加到团队

java - 如何在thymeleaf模板中添加html标签?

java - 来自第三方 API 的模拟调用和响应

java - double 与 Double 有何不同?

javascript - 无法根据 Thymeleaf 变量执行脚本 &lt;script th :inline ="javascript">

java - 用于 noscript 中使用的 spring 模型变量的 thymeleaf 语法

java - 在启用安全性的 Spring 5 中加载静态资源时出现问题