Freemarker模板中支持的运算符
一、算术运算符
二、比较运算符
三、逻辑运算符
四、空判断运算符
五、三目运算
算术运算符
<#assign i=10>
<#assign j=20>
<#assign s=“Java”>
${i+j} //整型+整型变量
${i+100} //整型+整型常量
${i+s} //整型+字符串变量
${i+“Sun”} //整型+字符串常量
${“Sun Java”+i} //字符串+整型变量
${i-j} //整型-整型变量
<#noparse>
${i-“Java”} //语法错误
</#noparse>
${i/2} //整型除法 除尽时结果为整数
${i/3} //整型除法 不可整除时保留三位小数,并四舍五入
${i/9} //整型除法 不可整除时保留三位小数,并四舍五入
${1/3} //整型除法 不可整除时保留三位小数,并四舍五入
${2/3} //整型除法 不可整除时保留三位小数,并四舍五入
<#assign f = i/3> //运算结果赋值
${f}
模运算
${12%3} //12模3
${12%7} //12模7
比较运算符
<#assign age=20>
<#if age gt 30>
Age 大于 30
<#else>
Age 小于 30
</#if>
<#assign name=“Java”>
<#if name==“Java”>
Name is Java
<#else>
Name is not Java
</#if>
<#assign flag=3<1> //判断3小于1
<#if flag>
3 is less than 1
<#else>
3 is bigger than 1
</#if>
<#assign flag=3 lt 1> //判断3小于1
<#if flag>
3 is less than 1
<#else>
3 is bigger than 1
</#if>
<#assign flag=3 lte 1> //判断3小于等于1
<#assign flag=3 gte 1> //判断3大于等于1
${flag?c} ${flag?string} //布尔类型需要转化为字符类型输出
逻辑运算符
<#assign flag= 3 gt 1 && 2 gt 1>
${flag?c}
<#assign flag= 3 gt 1 || 2 lte 1>
${flag?c}
<#if 3 gte 1 && 2 lte 1>
3>=1 && 2 <= 1
<#else>
判断为假
</#if>
<#if testVar??>
testVar is not Null
<#else>
testVar is Null
</#if>
变量赋默认值
<#if testVar2??>
${testVar2}
<#else>
${testVar2!“DefaultVal”}
</#if>
三目运算
类似Java中的三目运算
${false?string(“对”,“错”)}