Java 浮点型值以科学符号表示

Java 浮点型值以科学符号表示,java,jsp,formatting,Java,Jsp,Formatting,MMCHAM8值为0.0005,其数据类型为float,但在屏幕中显示科学符号值,如5.0E-4 <td> <input size="5" type="text" name="MMCHAM8" id="MMCHAM8" readonly="readonly" ondblclick="alert(this.value)" class="readonly_field" value="${mat.mmVal

MMCHAM8
值为
0.0005
,其数据类型为float,但在屏幕中显示科学符号值,如
5.0E-4

<td>
    <input size="5" type="text" name="MMCHAM8" id="MMCHAM8" 
           readonly="readonly" ondblclick="alert(this.value)" 
           class="readonly_field"
           value="${mat.mmValues.MMCHAM8}" />
</td>`

`

这不是十六进制,而是。5.0E-4表示5*10-4,当然等于0.0005

如果希望以不同方式显示,可以使用:


(只需在JSP页面中使用echo
格式化的

有许多选项可供选择

  • 使用
    DecimalFormat

    NumberFormat f = new DecimalFormat("#.0000");
    f.format(mat.mmValues.MMCHAM8);
    
    String.format("%.4f", mat.mmValues.MMCHAM8)
    
  • 使用
    String.format()

  • 使用JSTL内置功能:

    <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
    <fmt:formatNumber type="number" maxFractionDigits="4" value="${mat.mmValues.MMCHAM8}" />
    
    
    

  • 这是科学符号,而不是如何解决这个问题,有什么解决方案吗?非常感谢@mureinikThanky非常感谢@Crazyjavahacking
    <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
    <fmt:formatNumber type="number" maxFractionDigits="4" value="${mat.mmValues.MMCHAM8}" />