Java 用于比较字符类型的struts 2 if标记

Java 用于比较字符类型的struts 2 if标记,java,if-statement,struts2,Java,If Statement,Struts2,我无法使用下面的代码比较字符类型 <s:if test='aCharType == "Y"'> This is not working </s:if> 这不起作用 下面是长度为1的字符类型 我在谷歌上搜索了一个问题,通过这个问题我知道struts 2 if标记可以与 字符串类型 如果您有解决方案,请告诉我。您正在将您的aCharType与字符串“Y”进行比较,将其与字符“Y”进行比较 <s:if test="aCharType == 'Y'">

我无法使用下面的代码比较字符类型

<s:if test='aCharType == "Y"'>
  This is not working
</s:if>

这不起作用
下面是长度为1的字符类型

我在谷歌上搜索了一个问题,通过这个问题我知道struts 2 if标记可以与 字符串类型


如果您有解决方案,请告诉我。

您正在将您的
aCharType
与字符串
“Y”
进行比较,将其与字符
“Y”进行比较

<s:if test="aCharType == 'Y'">
  This is working
</s:if>

这是有效的

您的语法是正确的。但是您应该在object之前加上“#”符号。符号“#”将表示该对象不是字符串。如果您不加说明,它将作为字符串

你的正确答案是:

<s:if test='#aCharType == "Y"'>
      this will work
</s:if>

这会奏效的

Aleksandrs解决方案应该很好,不久前写下了这个答案。回顾一下可能会很好:(显示不同的OGNL表达式及其计算方式)
#
字符用于访问值堆栈上下文中的命名值,与数据类型无关。