人啊,有的时候就是没有办法坚持一些事情,总是因为各种理由在推脱,逐渐就变成了拖延症!例如胖先生的减肥计划,其实本来就没有计划,属于散漫形式的!一直减肥,一直在肥!总是说没有时间,没有时间!其实有时候就是自己懒!

  人啊,有时候想去坚持,总是搞不懂自己要什么?也是自己没有毅力吧!

  话题扯的有点远了,再次更新一下关于Freemarker的使用,关于迭代集合,这个还是很实用的!

  今天买了一本书,希望自己能坚持读完吧《编码高质量代码--改善Java程序的151个建议》算不算推广呢

  

        /**
* 测试研究题目为:
* 数组,map以及list
*/
@Test
public void 测试集合() {
// 1.定义一个数组
String[] usernames = new String[]{"悟空","八戒","唐僧","沙僧"};//
// 2.定义个Map
Map<String, Object> map = new HashMap<String, Object>();
map.put("book", "红楼梦");
map.put("name", "黛玉"); //3.定义一个List中存储的为Map
List<Map<String,Object>> mapList = new ArrayList<Map<String,Object>>();
mapList.add(map);
map = new HashMap<String, Object>();
map.put("book", "三国杀");
map.put("name", "刘备");
mapList.add(map);
//4.定义一个List中存储数据为User对象
List<User> userList = new ArrayList<User>();
userList.add(new User("林冲", 18));
userList.add(new User("孙二娘", 20)); //以上的数据准备完毕,现在要传递数据到模板中并且要生成HTML页面
//1.创建数据模型
Map<String, Object> root = new HashMap<String, Object>();
root.put("shxt_array", usernames);
root.put("shxt_map", map);
root.put("shxt_list_map", mapList);
root.put("shxt_list_object", userList);
// 3.生成HTML文件
fu.exportHtml("demo05.ftl", root, "集合联系.html");
}

模板文件代码demo05.ftl:

<!DOCTYPE html>
<html>
<head>
<title>处理集合数据</title>
<meta charset="UTF-8">
</head> <body>
<#--我是注释-->
<h2>遍历数组</h2>
<#list shxt_array as username>
${username}
</#list>
<h2>遍历固定的数组范围:数据引用</h2>
<#-- 定义变量 -->
<#assign news=shxt_array[1..2]/>
<#list news as username>
${username}
</#list>
<hr/>
<h2>遍历map:首先要取得所有的keys</h2>
<#assign shxts=shxt_map?keys/>
<#-- 遍历shxts -->
<#list shxts as key>
${shxt_map[key]}
</#list>
<hr/>
<h2>遍历List中存储的是Map,两种写法</h2>
<#list shxt_list_map as map>
${map.book}--${map["name"]}<br/>
</#list>
<h2>遍历List中存储的是User</h2>
<#list shxt_list_object as user>
${user.account}--${user["age"]}<br/>
</#list>
</body>
</html>

运行结果:

如果你感觉胖先生的文章对你有所帮助,请加微信,发发红包,给我一点动力!

[freemarker篇]05.关于集合的遍历的更多相关文章

  1. Java基础知识强化之集合框架笔记05:Collection集合的遍历

    1.Collection集合的遍历 Collection集合直接是不能遍历的,所以我们要间接方式才能遍历,我们知道数组Array方便实现变量,我们可以这样: 使用Object[]  toArray() ...

  2. iOS系列 基础篇 05 视图鼻祖 - UIView

    iOS系列 基础篇 05 视图鼻祖 - UIView 目录: UIView“家族” 应用界面的构建层次 视图分类 最后 在Cocoa和Cocoa Touch框架中,“根”类时NSObject类.同样, ...

  3. java 集合list遍历时删除元素

    本文探讨集合在遍历时删除其中元素的一些注意事项,代码如下 import java.util.ArrayList; import java.util.Iterator; import java.util ...

  4. java 15 -3 集合的遍历的练习

    练习:用集合存储5个动物对象,并把动物对象进行遍历. 分析: A:创建动物类 a:无参构造方法 b:有参构造方法 c:get.set方法 B:创建集合对象 a:Collection animal = ...

  5. Map集合的遍历方式:

    迭代器来遍历 : entrySet() ; keySet(); values(); eg.HashMap<String,String> map = new HashMap<Strin ...

  6. 对JAVA集合进行遍历删除时务必要用迭代器

    java集合遍历删除的方法: 1.当然这种情况也是容易解决,实现方式就是讲遍历与移除操作分离,即在遍历的过程中,将需要移除的数据存放在另外一个集合当中,遍历结束之后,统一移除. 2.使用Iterato ...

  7. Android(java)学习笔记105:Map集合的遍历之键值对对象找键和值

    package cn.itcast_01; import java.util.HashMap; import java.util.Map; import java.util.Set; /* * Map ...

  8. Android(java)学习笔记104:Map集合的遍历之键找值

    package cn.itcast_01; import java.util.HashMap; import java.util.Map; import java.util.Set; /* * Map ...

  9. Java基础知识强化之集合框架笔记53:Map集合之Map集合的遍历 键值对对象找键和值

    1. Map集合的遍历(键值对对象找键和值) Map -- 夫妻对  思路:  A: 获取所有结婚证的集合  B: 遍历结婚证的集合,得到每一个结婚证  C: 根据结婚证获取丈夫和妻子 转换:  A: ...

随机推荐

  1. [Install] TeamViewer

    安装TeamViwer 1. $ sudo apt-get -f install 2. 使用gdebi安装TeamViwer. 所以先安装gdebi package. $ sudo apt-get i ...

  2. 以太坊开发(二)使用Ganache CLI在私有链上搭建智能合约

    以太坊开发(二)使用Ganache CLI在私有链上搭建智能合约 在上一篇文章中,我们使用Truffle自带的客户端Truffle Develop,在私有链上搭建并运行了官方提供的WebPack智能合 ...

  3. 团队作业7——第二次项目冲刺-Beta版本项目计划

    上一个阶段的总结: 在Alpha阶段,我们小组已近完成了大部分的功能要求,小组的每一个成员都发挥了自己的用处.经过了这么久的磨合,小组的成员之间越来越默契,相信在接下来的合作中,我们的开发速度会越来越 ...

  4. Swift 泛型和闭包结合使用

    通常在Swift中定义一个闭包来使用 typealias Closure= (Any?) -> () var tempClosure :Closure? /// 定义一个方法直接调用 func ...

  5. js设计模式之代理模式以及订阅发布模式

    为啥将两种模式放在一起呢?因为这样文章比较长啊. 写博客的目的我觉得首要目的是整理自己的知识点,进而优化个人所得知识体系.知识成为个人的知识,就在于能够用自己的话表达同一种意义. 本文是设计模式系列文 ...

  6. 某一线互联网公司前端面试题js部分总结

    js部分 1,使用严格模式的优点 - 消除Javascript语法的一些不合理.不严谨之处,减少一些怪异行为; - 消除代码运行的一些不安全之处,保证代码运行的安全: - 提高编译器效率,增加运行速度 ...

  7. position定位-absolute与fixed

    1. absolute 生成绝对定位元素,相对于static定位以外的第一个父元素进行定位. 2. fixed 生成绝对定位元素,相对于浏览器窗口进行定位.

  8. Spyder5 & 显示器校准 & 色彩校准

    Spyder5 & 显示器校准 & 色彩校准 Spyder5EXPRESS 绿蜘蛛5 – 轻松.快速地校准您的屏幕. Spyder5PRO 蓝蜘蛛5 – 可为您的所有笔记本电脑和台式机 ...

  9. 【bzoj3886】[Usaco2015 Jan]Moovie Mooving 状态压缩dp+二分

    题目描述 Bessie is out at the movies. Being mischievous as always, she has decided to hide from Farmer J ...

  10. Springboot2.x+shiro+redis(Lettuce)整合填坑

    主要记录关键和有坑的地方 前提: 1.SpringBoot+shiro已经集成完毕,如果没有集成,先查阅之前的Springboot2.0 集成shiro权限管理 2.redis已经安装完成 3.red ...