• WebWork中if等条件标签中String和Char的一个小陷阱


    本文仅用来提醒在WebWork的条件标签使用时要注意String和Char的区别.一个很简单的问题. 假设你的Action中有一个字段,例如叫name,那么对应的方法是: 

    JAVA代码

    public String getName()
    {
      return name;
    )

     
     通常,你的WebWork的视图文件中,如果用到字段比较时,例如if,else等,写法通常如下:
     

     <ww:if test="name.equals(’a’)">OK</ww:if>



     如果你的名字是 a 那么结果会怎么样哪? 结果是没有打印出OK来,这是为什么哪?
     
     但是如果你的name是2个字符或者更多,那么就会出来正确的结果了.
     

     <ww:if test="name.equals(’abc’)">OK</ww:if>


     
     看一下下面的Action中的部分代码,你应该也就会明白了吧. 

    public char getMyChar()
    {
       return ’a’;
    }

    public String getHello()
    {
      
    return "a";
    }
       


        在看看jsp中的代码: 


    hello<br>
    <
    ww:if test="’a’.equals(’a’)">World</ww:if>
    <
    br>
    I am
    <ww:property value="hello" />,and test <ww:if test="hello.equals(\"a\")">OK</ww:if>
    <
    br>
    I am
    <ww:property value="myChar" />,and test <ww:if test="myChar.equals(’a’)">OK</ww:if >

        

     如果你的变量肯定是一个字母,那就用char,如果不一定,那就只好用hello.equals(\"a\")的写法了.

  • 相关阅读:
    WPF的本质:数据和行为
    WPF 布局
    wpf中的样式与模板
    WPF命令
    WPF数据转换
    WPF 深入研究 之 Control 控件
    WPF布局控件
    WPF TextBox 验证输入
    Razor引擎学习:RenderBody,RenderPage和RenderSection
    WPF控件模版
  • 原文地址:https://www.cnblogs.com/willpower/p/1181246.html
Copyright © 2020-2023  润新知