Freemarker学习笔记(二)

 

输出变量值:

 

 1.输出集合元素

 

     (1).集合元素以“方括号[]”的方式存储值,其中集合元素包含两个特殊的循环变量:

            item_index:当前变量的索引值

            item_has_next:是否存在下一对象

        可以用<#break>指令跳出迭代。


     (2).assign指令使用方法

        

          a.最简单的语法:<#assign  name = value />

 

<tr>
	<td style="text-align:left">
		<#assign week = ["星期一","星期二","星期三","星期四","星期五"]/>
		<#list week as weekDay>
			${weekDay},
		</#list>
		<br>
		${week[3]}<br>
		
	</td>
</tr>

 

结果如下:

 

星期一, 星期二, 星期三, 星期四, 星期五, 
星期四

 

        b.定义集合元素时,语法如下:

              <#assign  iteratorName >

                      capture this                     

             </#assign> 

 

<tr>
	<td style="text-align:left">
		<#assign x>
			<#list ["一","二","三","四","五","六","七"] as ls>
				${ls_index+1}:${ls}
				<#if ls == '六'>
					<#break>
				</#if>
				<#if ls_has_next>
					,
				</#if>
			</#list>
		</#assign>
		assign Test:${x}<br>
	</td>
</tr>

 

结果如下:

 

assign Test: 1:一 , 2:二 , 3:三 , 4:四 , 5:五 , 6:六 

 

    (3)嵌套集合元素

 

    集合元素中还可以嵌套集合元素,取值方法如下:

 

<tr>
	<td style="text-align:left">
		<#assign week = [["星期一","星期二","星期三","星期四","星期五"],["星期六","星期日"],"一周"]/>
		工作日:
		<#list week[0] as weekDay>
			${weekDay},
		</#list>
		<br>
		休息日:
		<#list week[1] as weekDay>
			${weekDay},
		</#list>
		<br>
		周期:
			${week[2]}
	</td>
</tr>

 

结果如下:

 

工作日: 星期一, 星期二, 星期三, 星期四, 星期五, 
休息日: 星期六, 星期日, 
周期: 一周 

 

2.输出Map元素

   (1)简单的Map元素取值

         元素赋值如下:

         <#assign  mapList = { key1:value1 , key2:value2 ,...}

         Map元素以“花括号{}”包含,其中各个集合元素间以“逗号,”分隔,元素以key-value的格式用“冒号:分隔”。

    

<tr>
	<td style="text-align:left">
		<#assign score = {"语文":80 ,"数学":90 ,"英语":78} />
		<#list score?keys as x>
			${x} : ${score[x]} 
			<#if x_has_next>
				,
			</#if>
		</#list>
	</td>
</tr>

 

结果如下:

 

语文 : 80 , 数学 : 90 , 英语 : 78 

 

    (2)嵌套的Map元素取值:

 

<tr>
	<td style="text-align:left">
		<#assign score = {"语文":80 ,"数学":90 ,"英语":78,"理综":{"物理":70,"化学":67,"生物":87}} />
		<#list score?keys as x>
			<#if (x == "理综" ) >
				${x} : 
				<#list score[x]?keys as y>
				  ${y} : ${score[x][y]}
				</#list>
			<#else>
				${x} : ${score[x]} 	
			</#if>
			<#if x_has_next>
				<br>
			</#if>
		</#list>
	</td>
</tr>

 

结果如下:

 

语文 : 80 
数学 : 90 
英语 : 78 
理综 : 物理 : 70 化学 : 67 生物 : 87 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值