java map在JSTL EL中的小应用--<c:forEach>遍历Map<>泛型
准备数据
/** 结构示意图:
类型: List集合 map对象 LIst集合 Person类对象 String name ; int age mList -> map() ->pList ->Person p1 坤哥 24
->Person p2 鲲哥 104
->pList2
->Person ps1 王小三 24
->Person ps2 王小二 24
-> map2()
->pList3
->Person pr1 张咪咪 19
->Person pr2 赵咪咪 21
- >pList4
->Person pd1 谢广坤 54
->Person pd2 赵四 56 (可能是吧)
*/
Map所需包 (只限JSTL中)
java.util.HashMap
java.util.Map
常 见 Map 指 令 清 单
1. 创建map
Map<String,List<Person>> map = new HashMap<String,List<Person>>();
List<Map<String,List<Person>>> mList = new ArrayList<Map<String,List<Person>>>();
其实结构确实不难的。(O - O)```
2. map添加数据
map.put("谢广坤",54)
3. 获取key
map.keySet() 和 map.entrySet()
本处用keySet()。因为我菜,用entrySet()遍历的数据不太正常,哪天解决了再写吧。
4. 获取value
map.values() 注意 ‘ s ’
我 的 主 要 代 码
1. 数据准备
//以谢广坤为例
List<Person> pList4 = new ArrayList<Person>();
Person pd1 = new Person("谢广坤",54);
Person pd2 = new Person("赵四",56);
pList4.add(pd1);pList4.add(pd2);
//。。。
Map<String,List<Person>> map2 = new HashMap<String,List<Person>>();
map2.put("pList4",pList4);
//。。。
List<Map<String,List<Person>>> mList = new ArrayList<Map<String,List<Person>>>();
mList.add(map2);
2. 输出所有数据
<c:forEach items="${mList}" var="m" varStatus="id">
<h2>第${id.count}个map</h2>
<c:forEach items="${m.keySet()}" var="k">
<h3>List的名字是:<c:out value="${k}"></c:out></h3>
<c:forEach items="${m.values()}" var="l">
<c:forEach items="${l}" var="p">
<table border="1px dotted blue">
<tr>
<th>姓名</th>
<th>年龄</th>
</tr>
<tr>
<td>${p.name}</td>
<td>${p.age}</td>
</tr>
</table>
<br>
</c:forEach>
</c:forEach>
</c:forEach>
</c:forEach>
3. 输出年龄大于50的乡村爱情人物
<c:forEach items="${mList}" var="m">
<c:forEach items="${m.values()}" var="l">
<c:forEach items="${l}" var="p">
<c:if test="${p.age>50}">
<table border="2px dotted blue">
<tr>
<th>姓名</th>
<th>年龄</th>
</tr>
<tr>
<td>${p.name}</td>
<td>${p.age}</td>
</tr>
</table>
</c:if>
</c:forEach>
</c:forEach>
</c:forEach>
结 果 样 子
大概就是这个样子

java map在JSTL EL中的小应用--<c:forEach>遍历Map<>泛型的更多相关文章
- Java实现 LeetCode 671 二叉树中第二小的节点(遍历树)
671. 二叉树中第二小的节点 给定一个非空特殊的二叉树,每个节点都是正数,并且每个节点的子节点数量只能为 2 或 0.如果一个节点有两个子节点的话,那么这个节点的值不大于它的子节点的值. 给出这样的 ...
- 在JSTL EL中处理java.util.Map,及嵌套List的情况
关联的键查找存储在映射中的值. 在方括号中指定键,并将相应的值作为表达式的值返回.例如,表达式 ${map['key']} 返回与 map标识符所引用的 Map 中的 "key" ...
- java 11-8 在大串中查找小串的案例
1.统计大串中小串出现的次数 举例: 在字符串"woaijavawozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijavagun& ...
- js中三个对数组操作的函数 indexOf()方法 filter筛选 forEach遍历 map遍历
indexOf()方法 indexOf()方法返回在该数组中第一个找到的元素位置,如果它不存在则返回-1. 不使用indexOf时 var arr = ['apple','orange','pea ...
- 空数组在以下三种遍历中均不可更改:forEach、map和for...in
首先,我们要知道对于forEach.map和for...in三种遍历,在不是空数组的情况下,要想实现更改原数组的方法,代码如下: var list = [1,2,3,4]; var list1 = [ ...
- 【java】TreeMap/HashMap的循环迭代中 keySet和entrySet和forEach方式 + map的几种迭代方式
参考链接:https://www.cnblogs.com/crazyacking/p/5573528.html ================================== java紫色代表迭 ...
- 获取map中的一个value值以及遍历map获得map里所有key、value的值
前言: 1.声明一个map: Map map = new HashMap();2.向map中放值,注意:map是key-value的形式存放的.如: map.put(”sa”,”dd”); 3.从ma ...
- ES6中变量解构的用途—遍历Map结构
- 谈谈java中遍历Map的几种方法
java中的map遍历有多种方法,从最早的Iterator,到java5支持的foreach,再到java8 Lambda,让我们一起来看下具体的用法以及各自的优缺点 先初始化一个map public ...
随机推荐
- NFS介绍、服务端安装配置、NFS配置选项
6月21日任务 14.1 NFS介绍14.2 NFS服务端安装配置14.3 NFS配置选项 14.1 NFS介绍 14.2 NFS服务端安装配置 1.首先需要2台机器,一台是服务端,一台是客户端,分别 ...
- C语言l博客作业05
问题 回答 这个作业属于哪个课程 C语言程序设计ll 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/9830 我在这 ...
- 一文了解Nuget的使用
Nuget介绍 官网定义:NuGet是.NET的软件包管理器(免费).NuGet客户端工具提供了生成和使用软件包的能力.NuGet Gallery 是所有软件包作者和消费者都使用的中央软件包存储库. ...
- 华为云OCR文字识别 免费在线体验!
嘿,华为云OCR文字识别了解一下,免费在线体验! 物流行业快速提取运单信息.医疗/保险行业单据快速录入.政务办事人证检验,你知道这些都是如何实现的么? 答案就是:OCR文字识别! 作为AI时代效率倍增 ...
- 一道随机函数题:由rand5()生成rand7()
题目:已知rand5()函数能随机等概率的生成0, 1, 2, 3, 4,利用rand5()函数编写一个rand7()函数实现相似的功能. 分析:其实就是利用rand5()组合成一个更大范围的数,之后 ...
- 创建自己的github仓库
作者: wangzz 原文地址:http://blog.csdn.net/wzzvictory/article/details/20067595 一.创建自己的github仓库 CocoaPods都托 ...
- 最新28道java基础面试题-上
28道java基础面试题 1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪 ...
- DRF Django REST framework 之 认证组件(五)
引言 很久很久以前,Web站点只是作为浏览服务器资源(数据)和其他资源的工具,甚少有什么用户交互之类的烦人的事情需要处理,所以,Web站点的开发这根本不关心什么人在什么时候访问了什么资源,不需要记录任 ...
- C++与数据结构课程设计---定票咨询系统
订票咨询管理系统 设计编制一个订票管理系统,考虑旅客不同的要求.例如,选择不同的交通工具,希望在旅途中的时间尽可能地短,期望旅费尽可能省,或要求中转次数最少等.为旅客提供两种或三种最优决策.车票基本信 ...
- Koa - 使用koa-multer上传文件(上传限制、错误处理)
前言 上传文件在开发中是很常见的操作,今天我选择使用koa-multer中间件来实现这一功能,除了上传文件外,我还会对文件上传进行限制,以及发生上传错误时的处理. 由于原来的 koa-multer 已 ...