VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 743|回复: 1

jstl显示小数的问题,请教。。。

[复制链接]

1

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-2-12 14:30:01 | 显示全部楼层 |阅读模式
大家好,我用一个SQL 语句查询出一个结果,在mysql query browser上显示结果为0.3, 但是我用jstl <c:out value="">显示出来确是一个很长的小数:0.30000000000000004 ,

请问是什么原因?如何解决?
回复

使用道具 举报

0

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-7-28 09:45:01 | 显示全部楼层
你没有用格式化
java.util.Currency 类的引入, <fmt:formatNumber> ****作的 currencyCode 属性优先权超过
            currencySymbol 属性。但是对于较老版本的 JDK 而言, currencySymbol 属性具有优先权。
            maxIntegerDigits 、 minIntegerDigits 、 maxFractionDigits 和
            minFractionDigits 属性用来控制小数点前后所显示的有效数字的个数。这些属性要求是整数值。
            groupingUsed
            属性带有布尔值并控制是否要对小数点前面的数字分组。例如,在英语语言环境中,将较大数的每三个数字分为一组,每组用逗号定界。其它语言环境用句点或空格来定界这样的分组。该属性的缺省值为
            true 。
            清单 3 显示了一个简单的货币示例,它本身是 清单 1 的扩展。在本例中,不指定 currencyCode 或
            currencySymbol 属性。而货币是由语言环境设置确定的。

            清单 3. 使用 <fmt:formatNumber> 标记显示货币值

<table>
<fmt:timeZone value="US/Eastern">
<c:forEach items="${entryList}" var="blogEntry"
varStatus="status">
<c:if test="${status.first}">
        <tr><td align="left" class="blogDate">
          <fmt:formatDate value=
              "${blogEntry.created}" dateStyle="full"/>
        </td></tr>
      </c:if>
      <tr><td align="left" class="blogTitle">
        <c:out value="${blogEntry.title}" escapeXml="false"/>
      </td></tr>
    <tr><td align="left" class="blogText">
      <c:out value="${blogEntry.text}" escapeXml="false"/>
      <font class="blogPosted">
        [My <fmt:formatNumber value="0.02" type="currency"/>
         posted at <fmt:formatDate value="${blogEntry.created}"
                                   pattern="h:mm a zz"/>]
      </font>
    </td></tr>
  </c:forEach>
  </fmt:timeZone>
</table>
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表