FreeMarker运算符(四)

本文主要介绍了FreeMarker的四种运算符:算术运算符、比较运算符、逻辑运算符和空值处理运算符,并提供了代码演示,包括一个ftl模板和对应的测试代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

运算符

  • 算术运算符
  • 比较运算符
  • 逻辑运算符
  • 空值处理运算符

代码演示

  • ftl模板(src下的ftl包中)

operator.ftl

<#-- 运算符 -->
<#assign num2=10.3>
num2:${num2+20}

<#assign name="abc">
${name+"def"}

<#assign newname=name+"gh">
${newname}

<#assign newnum=10+"a">
${newnum}

<#assign seq1=[1,2,3]+[4,5]>
#{seq1[4]}

<#assign num2=num2-2>
-:${num2}

<#assign num2=num2*2>
*:${num2}
<#--?int转换成int-->
<#assign num2=num2/2>
/:${num2?int}
<#--lt:< (小于号)gt:>(大于号)-->
<#assign b=1 lt 2>
1<2:${b?c}

<#assign b= 1 gt 2 >
1>2:${b?c}
<#-- b=1==2也可以 -->
<#assign b=1=2>
1=2:${b?c}

<#-- b= 1>0 && 1<3 -->
<#assign b=1 gt 0 && 1 lt 3>
1>0 && 1<3: ${b?c}

<#-- b= 1>1 || 1<3 -->
<#assign b=1 gt 1 && 1 lt 3>
1>1 || 1<3: ${b?c}

<#-- b= !(1>1) -->
<#assign b=!(1 gt 1)>
!(1>1): ${b?c}

<#-- 哈希表  -->
<#assign a={"name":"Tome"}>
a.name: ${a.name}
<#-- !空值处理运算符,如果a.age不存在,表示age为空,!20表示给age赋值20默认值   -->
a.age:${a.age!20}
  • 测试代码

Operator.java

package lxd.freemarker.base;

import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;

import freemarker.template.Template;
import freemarker.template.TemplateException;
import lxd.freemarker.utils.FreeMarkerUtil;

/**
 * ftl之运算符
 * @author lxd
 * @date 2016年11月22日
 */
public class Operator {

    public static void main(String[] args) {
        Template template = FreeMarkerUtil.getTemplate("operator.ftl");
        Writer writer = new OutputStreamWriter(System.out);
        try {

            template.process(null, writer);
            System.out.println("\n operator ftl success!");
            writer.flush();
            writer.close();

        } catch (TemplateException | IOException e) {

            System.out.println("\n operator ftl fail!");
            e.printStackTrace();

        }
    }

}
  • 输出结果
getTemplate success!
num2:30.3

abcdef

abcgh

10a

5

-:8.3

*:16.6
/:8
1<2:true

1>2:false
1=2:false

1>0 && 1<3: true

1>1 || 1<3: false

!(1>1): true

a.name: Tome
a.age:20
 operator ftl success!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值