String对象上的$ {empty var} nd $ {var.isEmpty()}评估之间的差异

时间:2014-05-06 14:06:06

标签: java jsp jstl

之间评估JSTL上的String对象是否有任何区别
<c:if test="${empty aString}"></c:if>

<c:if test="${aString.isEmpty()}"></c:if>

编辑:两者都有效,.isEmpty()在Spring Tool Suite上给出了一个anotation错误

1 个答案:

答案 0 :(得分:2)

你拥有它的代码,都被计算为false,因为你的测试中有一个空格&#34; &#34;

test=" true" <!-- condition is calculated as false -->
test="true" <!-- condition is true -->

此外,要从jstl调用方法,你必须使用get或is前缀来调用它。例如$ {var.empty}调用var对象的isEmpty或getEmpty。

修改

最好接近$ {empty var}, 因为var是&#39;&#39;或 null empty涵盖和无效条件。