Freemark学习(三):流程控制语句&list&map获取

简介 【ps:本文为系列教程,在文章末尾会有本系列其他教程传送门】在前两节学习中我们知道了freemark的helloWord以及freemark的部分数据类型。本节我们继续学习freemark的流程控制语句以及list、map对象数据怎么获取。本节主要内容:1:流程控制语句2:从list中获取数据3:从map中获取数据4:list和map结合使用从中获取数据5:function的使用流程语句:1.Sw

【ps:本文为系列教程,在文章末尾会有本系列其他教程传送门】

在前两节学习中我们知道了freemark的hello Word 以及freemark的部分数据类型。

本节我们继续学习freemark的流程控制语句以及list、map对象数据怎么获取。

本节主要内容:

1:流程控制语句

2:从list中获取数据

3:从map中获取数据

4:list和map结合使用从中获取数据

5:function的使用

流程语句:

1.Switch语句:

Java代码:

Freemark学习(三):流程控制语句&list&map获

页面代码:

Freemark学习(三):流程控制语句&list&map获

注意:这里的数据:The only legal comparisons are between two numbers, two strings, or two dates。这能是两个数字/字符串或是两个日期类型

If语句:

Java代码:

Freemark学习(三):流程控制语句&list&map获

页面代码:

Freemark学习(三):流程控制语句&list&map获

注意:

1:这里依然是两个数字/字符串或是日期。数字比较直接使用 == 字符比较使用 ==’比较值’

2:需要对大于/大于等于/小于/小于等于进行转换

两种方法 ,

1 用符号代替,> gt, >= gte ,< lt , <= lte

2 加括号 <#if(x>y)>

3:if对空的判断

请看下面这段页面代码:

Freemark学习(三):流程控制语句&list&map获

其中:

??:判断是否存在

所以 if data?? 其实就是判断data是否存在

?:后面跟的是内建函数。比如list集合有个size属性

所以 data?size gt 0其实就是data的size大于0

2.从list中获取数据

1:简单实用

语法:

<#list 数据list as item>

获取值

</#list>

Java代码:

Freemark学习(三):流程控制语句&list&map获

页面获取;

Freemark学习(三):流程控制语句&list&map获

3.从map中获取数据

同java中map获取方式一样。分三种情况

1:只获取key

Java代码:

Freemark学习(三):流程控制语句&list&map获

页面代码:

Freemark学习(三):流程控制语句&list&map获

2:分别获取key和value

页面代码:

Freemark学习(三):流程控制语句&list&map获

3:根据key获取value

Data[key]

Freemark学习(三):流程控制语句&list&map获

4.list和map结合使用从中获取数据

4.1 map嵌套list

java代码:

Freemark学习(三):流程控制语句&list&map获

页面代码:

Freemark学习(三):流程控制语句&list&map获

4.2 list嵌套Map

java代码:

Freemark学习(三):流程控制语句&list&map获

页面代码:

Freemark学习(三):流程控制语句&list&map获

输出结果:

Freemark学习(三):流程控制语句&list&map获

5:function的使用

在freemark中function的使用语法:

<#function name param1 param2 ... paramN>

...

<#return returnValue>

...

</#function>

5.1:简单的

求连个数的平均值

页面:

Freemark学习(三):流程控制语句&list&map获

输出结果:

Freemark学习(三):流程控制语句&list&map获

5.2:嵌套其他使用

页面:

Freemark学习(三):流程控制语句&list&map获

输出:

Freemark学习(三):流程控制语句&list&map获

说明:<#local sum = 0> 这个是申明变量的。

结束语:

我们通过三节的讲解Freemark快速入门已完成,这些已够日常开发需要,如果有特殊需求,后续将继续补充。

传送门:

《freemark学习(一):hello freemark》

《freemark学习(二):freemark的数据类型(1)》

Ps: 如果需要源码。请:Freemark学习(三):流程控制语句&list&map获

添加 【凯哥java】输入关键字:freemark或是是 freemarker即可获取源码。

欢迎关注凯哥公众号:凯哥Java

欢迎访问凯哥个人网站:www.kaigejava.com

本文原创地址:http://www.kaigejava.com/article/detail/42

本系列其他教程:

freemark学习(一):hello freemark

freemark学习(二):freemark的数据类型(1)

Freemark学习(三):流程控制语句&list&map获取


TopTop