EL 表達(dá)式提供了可以進(jìn)行加、減、乘、除和求余的 5 種算術(shù)運(yùn)算符,各種算術(shù)運(yùn)算符以及用法如表 1 所示。
表1 EL提供的算術(shù)運(yùn)算符
EL算術(shù)運(yùn)算符 |
說(shuō)明 |
范例 |
結(jié)果 |
---|---|---|---|
+ |
加 |
${15+2} |
17 |
- |
減 |
${15-2} |
13 |
* |
乘 |
${15*2} |
30 |
/或 div |
除 |
${15/2} 或 ${15 div 2} |
7 |
% 或 mod |
求余 |
${15%2} 或 ${15 mod 2} |
1 |
EL 的“+”運(yùn)算符與 java 的“+”運(yùn)算符不一樣,它無(wú)法實(shí)現(xiàn)兩個(gè)字符串的連接運(yùn)算,如果該運(yùn)算符連接的兩個(gè)值不能轉(zhuǎn)換為數(shù)值型的字符串,則會(huì)拋出異常。如果使用該運(yùn)算符連接兩個(gè)可以轉(zhuǎn)換為數(shù)值型的字符串,EL 會(huì)自動(dòng)地將這兩個(gè)字符轉(zhuǎn)換為數(shù)值型數(shù)據(jù),再進(jìn)行加法運(yùn)算。
例1:算術(shù)運(yùn)算符演示(math_demo.jsp):
<%@ page contentType="text/html" pageEncoding="utf-8"%>
<html>
<head> <title>EL 算術(shù)運(yùn)算符操作演示</title> </head>
<body>
<%
//存放的是數(shù)字
pageContext.setAttribute("num1",2);
pageContext.setAttribute("num2",4);
%>
<h1>EL 算術(shù)運(yùn)算符操作演示 </h1>
<hr/>
<h3>加法操作:${num1+num2}</h3>
<h3>減法操作:${num1-num2}</h3>
<h3>乘法操作:${num1*num2}</h3>
<h3>除法操作:${num1/num2}和${num1 div num2}</h3>
<h3>取模操作:${num1%num2}和${num1 mod num2}</h3>
程序運(yùn)行結(jié)果如圖 1 所示。
圖1 EL算術(shù)運(yùn)算符的操作演示