[freemarker篇]05.关于集合的遍历
人啊,有的时候就是没有办法坚持一些事情,总是因为各种理由在推脱,逐渐就变成了拖延症!例如胖先生的减肥计划,其实本来就没有计划,属于散漫形式的!一直减肥,一直在肥!总是说没有时间,没有时间!其实有时候就是自己懒!
人啊,有时候想去坚持,总是搞不懂自己要什么?也是自己没有毅力吧!
话题扯的有点远了,再次更新一下关于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.关于集合的遍历的更多相关文章
- Java基础知识强化之集合框架笔记05:Collection集合的遍历
1.Collection集合的遍历 Collection集合直接是不能遍历的,所以我们要间接方式才能遍历,我们知道数组Array方便实现变量,我们可以这样: 使用Object[] toArray() ...
- iOS系列 基础篇 05 视图鼻祖 - UIView
iOS系列 基础篇 05 视图鼻祖 - UIView 目录: UIView“家族” 应用界面的构建层次 视图分类 最后 在Cocoa和Cocoa Touch框架中,“根”类时NSObject类.同样, ...
- java 集合list遍历时删除元素
本文探讨集合在遍历时删除其中元素的一些注意事项,代码如下 import java.util.ArrayList; import java.util.Iterator; import java.util ...
- java 15 -3 集合的遍历的练习
练习:用集合存储5个动物对象,并把动物对象进行遍历. 分析: A:创建动物类 a:无参构造方法 b:有参构造方法 c:get.set方法 B:创建集合对象 a:Collection animal = ...
- Map集合的遍历方式:
迭代器来遍历 : entrySet() ; keySet(); values(); eg.HashMap<String,String> map = new HashMap<Strin ...
- 对JAVA集合进行遍历删除时务必要用迭代器
java集合遍历删除的方法: 1.当然这种情况也是容易解决,实现方式就是讲遍历与移除操作分离,即在遍历的过程中,将需要移除的数据存放在另外一个集合当中,遍历结束之后,统一移除. 2.使用Iterato ...
- Android(java)学习笔记105:Map集合的遍历之键值对对象找键和值
package cn.itcast_01; import java.util.HashMap; import java.util.Map; import java.util.Set; /* * Map ...
- Android(java)学习笔记104:Map集合的遍历之键找值
package cn.itcast_01; import java.util.HashMap; import java.util.Map; import java.util.Set; /* * Map ...
- Java基础知识强化之集合框架笔记53:Map集合之Map集合的遍历 键值对对象找键和值
1. Map集合的遍历(键值对对象找键和值) Map -- 夫妻对 思路: A: 获取所有结婚证的集合 B: 遍历结婚证的集合,得到每一个结婚证 C: 根据结婚证获取丈夫和妻子 转换: A: ...
随机推荐
- ElasticSearch 论坛搜索查询语句
概述 研究论坛搜索如何综合时间和TF/IDF权重. 自定义权重计算的效率问题 数据结构 假设有一个论坛的搜索 字段包括: subject:标题 message:内容 dateline:发布时间 tag ...
- 你真的了解JAVA里的String么
Java中String类细节问题 (考察点Java内存分配问题) 1. String str1 = "abc"; System.out.println(str1 == &quo ...
- es6从零学习(三):Class的基本用法
es6从零学习(三):Class的基本用法 一:定义一个类 //定义类 class Point { constructor(x, y) { this.x = x; this.y = y; } toSt ...
- springboot 整合apache shiro
这几天因为项目需要,学习了下shiro,由此留下一些记录,也希望对初学shiro的朋友有帮助. springboot 是这两年新兴起来的一个项目,它的出现是为了减少springmvc开发过程中需要引入 ...
- 关于CString总结
前言:串操作是编程中最常用也最基本的操作之一. 做为VC程序员,无论是菜鸟或高手都曾用过CString.而且好像实际编程中很难离得开它(虽然它不是标准C++中的库).因为MFC中提供的这个类对 我们操 ...
- RXSwift--登录注册那点事
在iOS学习中登录注册是一个万能的可以拿出来实战的demo.接下来我们就从登录开始入手,PS:如果你对RXSwift中的概念和一些常用的函数不清楚可以参考这篇文章(可能打开比较慢请耐心等待).开始直接 ...
- HDU 2068 Choose the best route
http://acm.hdu.edu.cn/showproblem.php?pid=2680 Problem Description One day , Kiki wants to visit one ...
- centOS6.5如何从启动界面直接进入命令行界面
进入系统后,按Ctrl+Alt+Fn可以切换控制台,其中F1~F6是字符控制台,F7~F12是X控制台 如果启动直接进入字符控制台,而不是X Window,可以编辑/etc/inittab将id:5: ...
- 【Redis】- 延时任务
引言 在开发中,往往会遇到一些关于延时任务的需求.例如 生成订单30分钟未支付,则自动取消 生成订单60秒后,给用户发短信 对上述的任务,我们给一个专业的名字来形容,那就是延时任务.那么这里就会产生一 ...
- PHP查询网站
1.w3school http://www.w3school.com.cn/php/ 2.PHP官网 http://php.net/manual/en/funcref.php 3.国内的类似w3csh ...