当前位置: 代码迷 >> Web前端 >> 在EL中进行除法运算,结果不要小数的有关问题
  详细解决方案

在EL中进行除法运算,结果不要小数的有关问题

热度:563   发布时间:2012-06-26 10:04:13.0
在EL中进行除法运算,结果不要小数的问题

在EL表达式中若有${10/3},则他的结果输出的是个小数。大多数时候我们都只需要整数就可以了。以下是将小数转整数的方法:

?

?

<fmt:formatNumber type="number" value="${10/3}" maxFractionDigits="0"/>

?

maxFractionDigits="0"表示保留0位小数,即取整,注意:此时取的整数是四舍五入的。

如果是${1/3}结果就是0,如果是${6/7}结果就是1,此方法适合想四舍五入取整的。

当然想保留固定位小数只需将maxFractionDigits="0"中的0做适当修改就可以了,想保留小数点后几位就改成几。

?

当然也有不四舍五入取整的方法。

例如:

<fmt:formatNumber type="number" value="${(13-13%7)/7}"/>

如果用上面的方法结果为2,此方法结果为1,不同目的分别取之。

其实就是先得到余数,将余数减去再除,这样结果刚好是整数,也就不存在四舍五入的问题了。因为减去余数之后,正好整除。

  相关解决方案