EL运算符

来源:互联网 发布:淘宝运营教学视频 编辑:程序博客网 时间:2024/06/05 21:54

 关系运算符         说    明              范  例               结 果 
         = = 或 eq       等于           ${ 5 = = 5 } 或 ${ 5 eq 5 } true 
         != 或 ne        不等于         ${ 5 != 5 } 或 ${ 5 ne 5 } false 
         < 或 lt         小于           ${ 3 < 5 }或 ${ 3 lt 5 }      true 
         > 或 gt           于           ${ 3 > 5 }或 ${ 3 gt 5 }      false 
         <= 或 le        小于等于       ${ 3 <= 5 }或 ${ 3 le 5 }  true 
         >= 或 ge          于等于       ${ 3 >= 5 }或 ${ 3 ge 5 }  false

    注意 
    在使用EL 关系运算符时,不能够写成:

    ${param.password1} = = ${param.password2}

    或者

    ${ ${param.password1 } = = ${ param.password2 } }

    而应写成

    ${ param.password1 = = param.password2 }  

 

 

EL逻辑运算符

    EL 逻辑运算符只有三个 (见表6-8):

                                          表6-8 
           逻辑运算符        说 明              范  例                结 果 
          && 或 and       交集         ${ A && B } 或 ${ A and B } true / false 
           || 或 or       并集         ${ A || B } 或 ${ A or B }true / false 
           ! 或 not       非           ${ !A } 或 ${ not A }      true / false

    下面举几个例子:

      ${ param.month = = 7 and param.day = = 14 }

      ${ param.month = = 7 || param.day = = 14 }

      ${ not param.choice } 
EL 其他运算符

(1) Empty运算符

    (2) 条件运算符

    (3) ( ) 括号运算符

Empty运算符

    Empty 运算符主要用来判断值是否为null 或空的,例如:

 ${ empty param.name }

    接下来说明Empty 运算符的规则:

    (1) {empty} A

          ●假若A 为null 时,回传true

          ●否则,假若A 为空String 时,回传true

          ●否则,假若A 为空Array 时,回传true

          ●否则,假若A 为空Map 时,回传true

          ●否则,假若A 为空Collection 时,回传true

          ●否则,回传false

条件运算符

    所谓条件运算符如下:

    ${ A ? B : C}

    意思是说,当A 为true 时,执行B;而A 为false 时,则执行C

括号运算符

    括号运算符主要用来改变执行优先权,例如:${ A * (B+C) }

    至于运算符的优先权,如下所示(由高至低,由左至右)

 ||、or

 · ${ A ? B : C}

最 笔者写一个ELOperator.jsp 范例,将所有运算符实际操作一遍。

  ELOperator.jsp

   <%@ page contentType="text/html;charset=GB2312" %>

   <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

   <html>

   <head>

   <title>CH6  – ELOperator.jsp</title>

   </head>

   <body>

   <h2>EL 的运算符</h2>

   <c:set value="mike" var="username" scope="request" />

   <table border="1" width="50%" align="left">

   <TR>

     <TR>

       <TH>运算式</TH>

       <TH>结果</TH>

     </TR>

     <TR><TD>14 + 3</TD><TD>${14 + 3}</TD></TR>

 <TR><TD>14 - 3</TD><TD>${14 - 3}</TD></TR>

        <TR><TD>14 * 3</TD><TD>${14 * 3}</TD></TR>

        <TR><TD>14 / 3</TD><TD>${14 / 3}</TD></TR>

        <TR><TD>14 % 3</TD><TD>${14 % 3}</TD></TR>

        <TR><TD>14 == 3</TD><TD>${14 == 3}</TD></TR>

        <TR><TD>14 != 3</TD><TD>${14 != 3}</TD></TR>

        <TR><TD>14 < 3</TD><TD>${14 < 3}</TD></TR>

        <TR><TD>14 > 3</TD><TD>${14 > 3}</TD></TR>

        <TR><TD>14 <= 3</TD><TD>${14 <= 3}</TD></TR>

        <TR><TD>14 >= 3</TD><TD>${14 >= 3}</TD></TR>

        <TR><TD>true && false</TD><TD>${true && false}</TD></TR>

        <TR><TD>true || false</TD><TD>${true || false}</TD></TR>

        <TR><TD>! false</TD><TD>${! false}</TD></TR>

        <TR><TD>empty username</TD><TD>${empty username}</TD></TR>

        <TR><TD>empty password</TD><TD>${empty password}</TD></TR>

      </table>

      </body>

      </html>

0 0
原创粉丝点击