再讲<c:forEach>之前,现讲一下让EL表达式生效的语句

<% @ page isELIgnored="false"%>这句语句在你想让EL表达式生效的情况下,必须要加载jsp中。

<c:forEach>中各个常用属性的解释如下:

items:要遍历的集合,通常用EL表达式表示:pageContext.setAttribute("mylist",list); ${mylist}

var:变量

varStatus:变量的状态  varStatus的属性有index,和count.其中index从0开始数起,count:个数。

下面的代码讲了java中常用的集合:

 1 <%@ page import="java.util.ArrayList" %>
 2 <%@ page import="com.supwisdom.domain.Student" %>
 3 <%@ page import="java.util.HashMap" %>
 4 <%@ page language="java" contentType="text/html; charset=UTF-8"
 5          pageEncoding="UTF-8"%>
 6 <%--el表达式生效的语句--%>
 7 <%@page isELIgnored="false" %>
 8 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
 9 <%--防止调用函数时报错--%>
10 <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
11 <html>
12 <body>
13 <h2>Hello World!</h2>
14 <%--forEach的用法--%>
15 <%--用forEach遍历list集合--%>
16 <%
17             ArrayList<String> strings = new ArrayList<String>();
18             strings.add("王昭君");
19             strings.add("西施");
20             strings.add("霍去病");
21             strings.add("杨开慧");
22             pageContext.setAttribute("ouyangfeng",strings);
23 %>
24 <c:forEach var="item" items="${ouyangfeng}" varStatus="status">
25     <c:out value="${item}"></c:out>
26    status.index: <c:out value="${status.index}"></c:out>
27     status.count:<c:out value="${status.count}"></c:out><br>
28 </c:forEach>
29 <%--遍历list对象的集合--%>
30 <%
31     Student student = new Student();
32     student.setId(1);
33     student.setName("zyh");
34     student.setAge(16);
35     Student student2 = new Student();
36     student2.setId(2);
37     student2.setName("ouyangfeng");
38     student2.setAge(29);
39     ArrayList<Student> students = new ArrayList<Student>();
40     students.add(student);
41     students.add(student2);
42     pageContext.setAttribute("plump",students);
43 %>
44
45 <c:forEach var="item" items="${plump}">
46     学生的姓名:  <c:out value="${item.name}"></c:out>
47     学生的年龄:  <c:out value="${item.age}"></c:out>
48     学生的身份证号:<c:out value="${item.id}"></c:out>
49     <br>
50 </c:forEach>
51 <%--遍历list数组集合--%>
52 <%
53     ArrayList<String[]> sixi = new ArrayList<String[]>();
54    String[] str= new String[]{"country","china"};
55     String[] str2=new String[]{"address","NewYork"};
56    String[] str3= new String[]{"student","pupil"};
57     sixi.add(str);
58     sixi.add(str2);
59     sixi.add(str3);
60     pageContext.setAttribute("array",sixi);
61 %>
62 <c:forEach var="item" items="${array}">
63     <c:out value="${item[0]}"></c:out> <%--数组中的第一个元素--%>
64     <c:out value="${item[1]}"></c:out>  <%--数组中的第二个元素--%>
65     <br>
66 </c:forEach>
67 <%--遍历map集合--%>
68 <%
69     HashMap<String, String> map = new HashMap<String, String>();
70     map.put("China","Reservation");
71     map.put("France","Romantic");
72     map.put("America","Innovation");
73     pageContext.setAttribute("hashmap",map);
74 %>
75 <c:forEach var="item" items="${hashmap}">
76     键是:<c:out value="${item.key}"></c:out>
77     值是:<c:out value="${item.value}"></c:out><br>
78 </c:forEach>
79 </body>
80 </html>

tomcat运行的结果为:

 1 Hello World!
 2
 3 王昭君 status.index: 0 status.count:1
 4 西施 status.index: 1 status.count:2
 5 霍去病 status.index: 2 status.count:3
 6 杨开慧 status.index: 3 status.count:4
 7 学生的姓名: zyh 学生的年龄: 16 学生的身份证号:1
 8 学生的姓名: ouyangfeng 学生的年龄: 29 学生的身份证号:2
 9 country china
10 address NewYork
11 student pupil
12 键是:France 值是:Romantic
13 键是:America 值是:Innovation
14 键是:China 值是:Reservation

转载于:https://www.cnblogs.com/1540340840qls/p/7200964.html

jstl标签forEach的用法--遍历java的集合相关推荐

  1. JSTL标签forEach

    ------------------------------------- JSTL标签forEach---------------------------------- forEach(重点) fo ...

  2. java el表达式 if else_jsp EL表达式和JSTL标签if-else if-else用法

    java web javaEE ,jsp EL表达式和JSTL标签if-else if-else四种用法 一.条件运算符 ${user.gender==?'男':'女'} 二.if() code.. ...

  3. jstl标签库常见用法

    07620170913 --- jstl标签库的使用 --- 1.将相关jar包导入工程下 2.进行标签声明:<%@taglib prefix="c" uri="h ...

  4. EL表达式和JSTL标签:简化JSP的Java代码

    JSP页面接收.展示后端的数据,再JSP页面写很多的Java代码会造成书写麻烦.难以阅读.不利于团队协作的缺点,因此我们使用EL表达式和JSTL标签,代替并简化了JSP页面 EL表达式 语法:${st ...

  5. android list集合遍历,Java list集合遍历操作遇到的问题

    Java程序员在使用java list集合遍历操作时经常会遇到一些问题,遇到问题该如何解决,想必一些新手也是非常极手,在此,小编给大家汇总了一些java list集合遍历操作常见的问题,给大家做详细分 ...

  6. java day41【JSP 、MVC开发模式 、EL表达式 、JSTL标签 、三层架构】

    第一章  JSP 1. 指令 * 作用:用于配置JSP页面,导入资源文件 * 格式: <%@ 指令名称 属性名1=属性值1 属性名2=属性值2 ... %> * 分类: 1. page : ...

  7. JSTL标签库学习笔记

    JSTL概述 apache的东西,依赖于EL 使用jstl需要导入jstl.jar包 标签库 core 核心标签库 fmt 格式化标签库 sql 数据库标签库,过时 xml xml标签库,过时 JST ...

  8. JSP标签和JSTL标签注意点

    1.转发和重定向问题 当前项目:/Test 转发路径:"/"根目录表示当前项目"/Test","/login.jsp"就是"/Te ...

  9. JSTL标签库的使用

    1 JSTL 1.1 JSTL概述 1)简介 JSTL的全称是:JSP Standard Tag Libary.它是JSP中标准的标签库.它是由Apache实现的. 它由以下5个部分组成: 组成 作用 ...

最新文章

  1. Winrar目录穿越漏洞复现
  2. mysql binlog日志优化及思路
  3. MapReduce编程实战之“工作原理”
  4. OpenCV Image Pyramids影像金字塔
  5. python同时输入多个变量_python同时给多个变量赋值|python3教程|python入门|python教程...
  6. 潜入水下后,水越深,受周围的挤压力越大...
  7. 你会选择深圳还是佛山?
  8. java判断long 大于0_JAVA的一道习题:找出五个大于Long.MAX_VALUE的素数
  9. Vue 中是如何解析 template 字符串为 VNode 的?
  10. The request was rejected by the HTTP filter
  11. 2014/08/11 – Backbonejs
  12. http://jingyan.baidu.com/article/fcb5aff78e6a48edab4a7146.html
  13. 019年中国航空三字代码对照表完全汇总
  14. 树莓派——槑槑智能音箱
  15. 下载安装Vue-CLI
  16. 2019.9.在循环队列中设置一个标志flag,当front=rear且flag=0时为队空,当front=rear且flag=1时候队满,请编写相应的入队和出队算法(假设队头指针front指向对头.
  17. linux 路由器 漏洞,多个Linksys EA系列路由器信息泄露漏洞(CVE-2014-8244)
  18. 如何在网上回复负面评论
  19. 怎么把多个文件做成一个二维码?文件怎么做成二维码?
  20. 超声波模块测距 Arduino代码

热门文章

  1. 用STM32实现FFT
  2. 【自适应波束形成算法】 ---- 线性约束最小方差准则(公式推导)
  3. 爆火AIGC产品卷翻海外营销:AI一键搞定美工和拍摄,抠图PS设计样样精通,月活迅速破百万...
  4. GFS 分布式数据系统
  5. docker mysql 菜鸟_Docker commit 命令
  6. 环境变量中bin目录是什么,windows 环境变量中%%的作用和path的作用
  7. 《名侦探柯南:零的执行人》 发布终极预告
  8. 河北省博物馆广场的鸽子
  9. 新库上线 | CnOpenDataA股上市公司业绩预告数据
  10. github label有什么用?