参考文章: 在EL表达式中比较数字似乎不起作用
参考文章: 比较EL表达式中的数字似乎不起作用(Comparing numbers in EL expression does not seem to work)
结合JSTL保存变量
<c:set
var="<string>"
value="<string>"
target="<string>"
property="<string>"
scope="<string>"/>
因为<c:set>
将硬编码值作为字符串进行保存,EL也将其评估为String,
所以无法比较成功
方法一
通过EL表达式设置值。这将被解释为Long
,而不是String
。
<c:set var="pagerTotDisp" value="${9}" />
<c:set var="TotalPages" value="${10}" />
方法二
使用<fmt:parseNumber>
,如果您将其作为String
无法控制的其他地方的变量作为变量,则它将是唯一的解决方案。
<fmt:parseNumber var="pagerTotDisp" value="9" />
<fmt:parseNumber var="TotalPages" value="10" />
<!-- 或者转换变量 -->
<fmt:parseNumber var="pagerTotDisp" value="${pagerTotDisp}" />
<fmt:parseNumber var="TotalPages" value="${TotalPages}" />