用fmt标签对EL表达式取整
本篇文章转载自:https://blog.csdn.net/u013400939/article/details/47948541
一般来说我们是无法实现EL表达式取整的。对于EL表达式的除法而言,他的结果是浮点型。
如:${6/7},他的结果是:0.8571428571428571。对于这个我们是无法来实现取整的。但是我们现在的目的就是要EL表达式来实现取整。这个时候需要用到<fmt:formatNumber />这个标签。该标签的说明如下:
功能:该标签用来格式化数值即设置特定语言环境下的数值输出方式
语法: <fmt:formatNumber value="数值" ......./>
属性说明:Value要转换的数值。
Type格式化方式(currency,number,percent) 。
Pattern用户自定义的格式。
var保存转换结果的变量。
scope变量的范围。
如:<fmt:formatNumber type="number" value="${8/7)}" maxFractionDigits="0"/> 结果为1。
其中maxFractionDigits="0"表示保留0位小数,这样就可以实现取整了。同时这里是按照四舍五入的规则来进行取整的。如果是${2/6}结果就是0,如果是${6/7}结果就是1。
在这里我们同样也可以设置保留n为小数,仅需要设置maxFractionDigits="n"即可实现。
例如${8/7} ,${6/7} ,${12/7 } 在页面的显示结果分别为:
1.1428571428571428
0.8571428571428571
1.7142857142857142
现在我的目的是只取前面的整数,此时我用的是EL表达式的<fmt:formatNumber />标签,例如:
<fmt:formatNumber type="number" value="${8/7)}" maxFractionDigits="0"/>
结果为1.
maxFractionDigits="0"表示保留0位小数,即取整,注意:此时取的整数是四舍五入的。
如果是${1/7}结果就是0,如果是${6/7}结果就是1,此方法适合想四舍五入取整的。
当然想保留固定位小数只需将maxFractionDigits="0"中的0做适当修改就可以了,想保留小数点后几位就改成几。
当然也有不四舍五入取整的方法。
例如:
<fmt:formatNumber type="number" value="${13-13%7)/7)}"/>
如果用上面的方法结果为2,此方法结果为1,不同目的分别取之。
其实就是先得到余数,将余数减去再除,这样结果刚好是整数,也就不存在四舍五入的问题了。因为减去余数之后,正好整除,经过本人测试加上maxFractionDigits="0"已经不起作用了
用fmt标签对EL表达式取整的更多相关文章
- EL表达式取整问题
一般来说我们是无法实现EL表达式取整的.对于EL表达式的除法而言,他的结果是浮点型. 如:${6/7},他的结果是:0.8571428571428571.对于这个我们是无法直接来实现取整的. 这时就可 ...
- EL表达式取整
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%> 1. <fm ...
- 通过fmt标签格式化el表达式中的日期、小数
首先引入fmt外部文件包 <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" % ...
- EL表达式取整数或者取固定小数位数的简单实现
EL表达式取整数或者取固定小数位数的简单实现 例如${8/7} ,${6/7} ,${12/7 } 在页面的显示结果分别为: 1.1428571428571428 0.8571428571428571 ...
- EL表达式取值中文再发送请求时会乱码
问题描述: 在网站底部进行评论,点击提交按钮时,后台tomcat报错,通过火狐浏览器的firebug看到发送的POST请求体中,有一个title参数是乱码, 导致该字段超长违反了数据库字段的长度约束: ...
- JSP中EL表达式取值问题记录(已解决)
***************************2015-10-28 22:21************************* 问题描述如下: 在当前的jsp页面已经有了如下代码: < ...
- EL表达式取Map,List值的总结
EL表达式取Map中的值:后台action 中: Map map = new HashMap(); map.put(key1,value1); map.put(key2,value2); map.pu ...
- 关于EL表达式取值的问题
EL表达式取值时,如果没有指定作用域,EL表达式会自动按照作用域的大小,从小到大依次去找;比如${s},会自动按照"pageContext,request,session,applicati ...
- 独立的js文件中不能使用EL表达式取值
在独立的js文件中写了一个EL表达式取值,发现没有取到值,原因在于不能在独立的js文件中使用EL表达式,可以在jsp页面定义全局变量,然后在js文件中引用
随机推荐
- SEO优化之——rel=canonical(整合重复页)
用法一 如图所示 有三个页面,三个页面的访问路径都不一样,但是现实的内容page2和page3显示的内容和page1一样,这时候在三个page中分别都加入了<link res="can ...
- SPOJ IAPCR2F 【并查集】
思路: 利用并查集/DFS都可以处理连通问题. PS:注意Find()查找值和pre[]值的区别. #include<bits/stdc++.h> using namespace std; ...
- LOL数值分析
http://blog.sina.com.cn/s/blog_704133cb01018hud.html 为了从理论层面提高自己打<英雄联盟>的水平,再加上自己也有这方面的兴趣,所以我最近 ...
- ios 适配问题
两张图解决
- jsp学习与提高(五)——JSP 异常处理
JSP 异常处理 当编写JSP程序的时候,程序员可能会遗漏一些BUG,这些BUG可能会出现在程序的任何地方.JSP代码中通常有以下几类异常: 检查型异常:检查型异常就是一个典型的用户错误或者一个程序员 ...
- 微信小程序 笔记
1.Input 输入控件 <input type='digit' placeholder='0.00'></input> 如果要使用单纯的数字控件,使那么可以将type设置为d ...
- Uva1377
/* 在n个刻度和他们的差里挑不超过7个刻度,0是固定的,最大的刻度肯定是最大值,然后剩下的dfs挑. */ #include<bits/stdc++.h> #define inf 0x3 ...
- PHP全国省市区地址分割提取脚本程序
github地址: https://github.com/zmxfree/addressapart 比如将 浙江省杭州市江干区XX路X号 分割成 浙江省 杭州市 江干区 XX路X号,方便excel操作 ...
- RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例
你是否听说过或者使用过队列? 你是否听说过或者使用过消息队列? 你是否听说过或者使用过RabbitMQ? 提到这几个词,用过的人,也许觉得很简单,没用过的人,也许觉得很复杂,至少在我没使用消息队列之前 ...
- 在ubuntu 12.04上安装tomcat 7.40
因为源上的版本问题,所以没有使用源上的自动安装包,老规矩,Tomcat 7.0.40 Core下载地址:http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/ ...