zoukankan      html  css  js  c++  java
  • Velocity(6)——#if指令

    下面是#If指令的一个简单而完整的示例:

    #if ($foo < 10)
    Go North
    #elseif ($foo
    == 10)
    Go East
    #
    else
    Go West
    #end 不能漏掉

    #if指令用于判断某个条件是否为true。以上面的代码为例,当$foo < 10为true时,将会显示"Go North"。

    有时会看到这样一种写法:#if($foo) ... #end。这里充当判断条件的是一个变量$foo,它在两种情况下是true:一是$foo作为布尔值(Boolean)并且其值为true,二是$foo是一个非布尔值并且值不为null。

    关系运算

    Velocity的关系运算中有一个==。它和Java中的==不太一样。java中==严格判断两个对象是否是同一个对象(内存地址是否是同一个,是否是同一个类的对象),而不是判断它们的值是否相同(两个String的字面值是否相同要使用equals()方法)。而Velocity中的==可以直接比较数值,字符串以及其他对象,如果==两侧的对象是不同的类的对象,在比较前会用toString()转换后再比较

    逻辑运算

    Velocity的逻辑运算有AND、OR、NOT三个。表现在语法上是&&、||、!这三个符号。下面是几个示例:

    #if($foo && $bar<10)
    ...
    #end

    #
    if($foo || $bar)
    ...
    #end

    #
    if(! $foo )
    ...
    #end

    需要注意的是,&&和||是有短路效应的。一旦前一个就可以判断真假,后面的条件不再进行判断。另外,要特别注意$!foo和!$foo的区别

  • 相关阅读:
    天行健宇宙的生与死
    知识库:maven打包时跳过测试
    oracle 行列转换
    C#格式化字符串
    存储过程的使用
    正则表达式
    怎么防止[SQL注入]
    11个月了.
    开通博客喽,
    别的程序员是怎么读你的简历的
  • 原文地址:https://www.cnblogs.com/yuepeng/p/1885282.html
Copyright © 2011-2022 走看看