?
输出变量值:
?
?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
?
?