EL表达式---关系运算符
来源:互联网 发布:王思聪域名绑定微博 编辑:程序博客网 时间:2024/06/05 12:06
近来公司做html5页面的数据展现,发现集中使用了El表达式,而对于EL表达式,发现自己对于关系运算符的运用还存在很多不足,特此 查阅以前的书籍资料和从网上看一些大牛的笔记,总结如下:
首先El关系运算符有以下六个运算符:
关系运算符
说明
范例
结果
== 或 eq
判断符号两边是否相等,相等返回
true,否则返回false
${ 5 == 5 } 或 ${ 5 eq 5 }
true
!= 或 ne
判断符号两边是否不相等,不相等返回
true,否则返回false
${ 5 != 5 } 或 ${ 5 ne 5 }
false
< 或 lt
判断符号左边是否小于右边,如果小于返回true,否则返回false
${ 3 < 5 }或 ${ 3 lt 5 }
true
> 或 gt
判断符号左边是否小于右边,如果小于返回true,否则返回false
${ 3 > 5 }或 ${ 3 gt 5 }
false
<= 或 le
判断符号左边是否小于或者等于右边,如果小于或者等于返回true,否则返回false
${ 3 <= 5 }或 ${ 3 le 5 }
true
>= 或 ge
判断符号左边是否大于或者等于右边,如果大于或者等于返回true,否则返回false
${ 3 >= 5 }或 ${ 3 ge 5 }
false
在使用过El表达式的人,都知道我们去取一个参数值的时候,通常都是以${param.name1}这种形式,但是我们在判断的时候,不能以
${param.name1} = = ${param.name2}这种形式,或者 ${ ${param.name1} = = ${ param.name2} };
而我们应该写成 ${ param.name1 = = param.name2}。
然我们在使用El表达式的关系运算符的时候,还应该了解如下规则:
(1) A {<, >, <=, >=, lt, gt, le, ge} B
假若 A == B的话,运算符为<=, le, >=, ge 时,返回的应该是true,否则返回false,
假若 A 为null 或者 B 也 为null 时,表达式将返回 false,
假若A或B为BigDecimal时,将另一个转为BigDecimal,然后返回 A.compareTo(B) 的值,
假若 A 或B 为Float、Double 时,先把A和B都转为Double 类型,然后再根据与运算符进行运算,
假若A 或B为Byte、Short、Character、Integer或Long时,皆转为Long 类型,然后再根据运算符进行运算,
假若 A 或B 为String 时,将另一个也转为String,然后做词汇上的比较。
(1) A {==, !=, eq, ne} B
假若 A == B,根据它的运算符运算,
假若 A 为null 或B 为null 时:== /eq 则返回 false,!= / ne 则返回 true ,
假若 A 或B 为BigDecimal 时,将另一个转为BigDecimal,则:
假若运算符为 == / eq,则返回A.equals(B)
假若运算符为 != / ne,则返回 !A.equals(B)
假若 A 或B 为Float、Double 时,皆A和B都转为Double 类型,然后再根据与运算符进行运算,
假若A 或B为Byte、Short、Character、Integer 或Long时,皆转为Long 类型,然后依其运算符运算
假若 A 或B 为Boolean 时,将另一个也转为Boolean,然后依其运算符运算
假若 A 或B 为String 时,将另一个也转为String,然后做词汇上的比较
否则,假若A.equals(B)产生异常时,则错误!
否则,然后依其运算符运算,回传A.equals(B)
最后,我们在实际开发中,可能没有体会的这么仔细,但真正在判断两个值的关系时,我们需要知道为什么会返回这样的结果!以此总结,勉励自己;有不足之处,还望大神不吝赐教!
- EL表达式---关系运算符
- el表达式(关系运算符)
- EL表达式的关系运算
- EL关系运算符
- EL关系运算符
- El表达式运算符
- El表达式运算符
- El表达式运算符
- EL表达式的逻辑运算和关系运算
- EL的关系运算符
- EL表达式三元运算符
- EL表达式中的运算符
- EL表达式关系操作符
- el表达式(条件运算符)
- EL表达式三目运算符
- EL表达式运算符、常用函数详解
- EL表达式与三目运算符
- JSP EL表达式运算符总结
- java竞赛-大数阶乘问题
- C/C++检测进程是否被调试
- edX-Cypress OVA导入后个性定制
- HTML5基础--开发工具
- C-050.条件编译
- EL表达式---关系运算符
- NYOJ-33-蛇形填数
- MXNet安装教程
- 【后缀数组系列】二、后缀数组的两种求法
- 学习日记--第三方开源mpandroidchart统计图片测试
- linux 文件权限
- java竞赛-数组中同值的多余元素删除并输出
- Apache mina VS Netty
- LINIQE(一)