FreeMarker 集合遍历

Posted Go_Skill

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FreeMarker 集合遍历相关的知识,希望对你有一定的参考价值。

freemarker list (长度,遍历,下标,嵌套,排序)

1. freemarker获取list的size :

 

Java

ArrayList<String> list = new ArrayList<String>();

 

Freemaker

${list?size}

 

 

2. list的遍历:

 

<#list animals as being>

    <tr>

        <td>${being.name}${being.price}<td>

    </tr>

</#list>

 

3. 遍历MAP 

 

 <#list map?keys as k>

    <option value="${k}">${map[k]}</option>

</#list>

 

 

4.list遍历中的下标序号:

 

_index是list的一个属性

<#list list as a>

     ${a_index}

</#list> 

 

5.取LIST中第i个元素的值

${list[i]} 

嵌套时前面要有括号,如下,将字符串变成list,然后取第i个元素的值

 ${(str?split(","))[i]} 

 

 

6. list的嵌套:

<#list jsskList as jsskVO>

   <#list kcList as kcVO>

           <#if kcVO.kch=jsskVO.kch> (kcVO里有编号和名称,而jsskVO里只有编号)

                  ${kcVO.kcm} 

           </#if>

   </#list>

</#list>

 

 

7. list排序:

      升序 .sort_by()

<#list list?sort_by("字段") as x>

</#list>

     降序 .sort_by()?reverse

<#list list?sort_by("字段")?reverse as x> 

</#list>

 

8.item_has_next,size使用:

 

<#list userList as user>


  <#if !user_has_next>
   共有${userList?size}最后一个用户是:${user.userName}
  </#if>
</#list>

以上是关于FreeMarker 集合遍历的主要内容,如果未能解决你的问题,请参考以下文章

freemarker怎么遍历数组

Freemarker如何遍历List<String>集合?

freemarker可以用来输出自定义集合吗?

freemarker如何遍历模板中所有变量

freemarker中遍历一个list,得到指定的值 然后以逗号隔开

freemarker遍历map,注意 root.put("aa",map)