forEach标签

forEach标签用来循环.

属性:

* var :定义循环变量

* begin :从哪开始

* end :到哪结束

* step :递增

* items :遍历的内容

* varStatus :记录循环变量

代码:

<h1>JSTL的forEach标签</h1>

<h3>遍历数组</h3>

<%

String[] arrs = { "小默", "小房", "美美" };

pageContext.setAttribute("arrs", arrs);

%>

<!-- 使用增强for for(类型 遍量:循环内容){} -->

<!-- 

for(String name:arrs){}

-->

<c:forEach var="name" items="${ arrs }">

${ name }

</c:forEach>

<h3>遍历List集合</h3>

<%

List<String> list = new ArrayList<String>();

list.add("苍老师");

list.add("美美老师");

pageContext.setAttribute("list", list);

%>

<c:forEach var="name" items="${ list }">

${ name }

</c:forEach>

<h3>遍历Map结合</h3>

<%

Map<String,String> map = new HashMap<String,String>();

map.put("aaa", "凤姐");

map.put("bbb", "芙蓉");

map.put("ccc", "如花");

pageContext.setAttribute("map", map);

%>

<c:forEach var="entry" items="${ map }">

${ entry.key } --- ${ entry.value }

</c:forEach>

<h3>遍历对象的集合</h3>

<%

List<Person> pList = new ArrayList<Person>();

pList.add(new Person("美美",32));

pList.add(new Person("小边",18));

pList.add(new Person("凤姐",28));

pageContext.setAttribute("pList", pList);

%>

<c:forEach var="p" items="${ pList }">

${ p.name } --- ${ p.age }

</c:forEach>

<h3>输出1到10</h3>

<c:forEach var="i" begin="1" end="10" step="1">

${ i }

</c:forEach>

<h3>从1加到100的和</h3>

<c:set var="sum" value="0" scope="page"></c:set>

<c:forEach var="i" begin="1" end="100" step="1">

<c:set var="sum" value="${ sum + i }" scope="page"></c:set>

</c:forEach>

${ sum }

<h3>从100-200遍历 每次递增 3 到第三个数变成红色</h3>

<c:forEach var="i" begin="100" end="200" step="3" varStatus="status">

<c:if test="${ status.count % 3 == 0}">

<font color="red">${ i }</font>

</c:if>

<c:if test="${ status.count % 3 != 0}">

${ i }

</c:if>

</c:forEach>

jstl foreach标签的更多相关文章

  1. [jstl] forEach标签使用

     在JSP的开发中,迭代是经常要使用到的操作.例如,逐行的显示查询的结果等.在早期的JSP中,通常使用Scriptlets来实现Iterator或者Enumeration对象的迭代输出.现在,通过JS ...

  2. JSTL核心标签库使用

    JSTL是什么? java standard taglib(java标准标签库). 标签是什么? sun公司制订的一种技术规范,用来将jsp页面中的java代码使用类似于html当中的标记来替换 的一 ...

  3. 【JSP】JSTL核心标签库的使用方法和示例

    JSTL 核心标签库 JSTL 核心标签库标签共有13个,功能上分为4类: 1. 表达式控制标签:out.set.remove.catch 2. 流程控制标签:if.choose.when.other ...

  4. JSTL核心标签

    JSTL 核心标签库标签共有13个,功能上分为4类: 1.表达式控制标签:out.set.remove.catch 2.流程控制标签:if.choose.when.otherwise 3.循环标签:f ...

  5. JSTL标准标签库具体解释

    JSTL标签库的使用是为类弥补html表的不足.规范自己定义标签的使用而诞生的. 在告别modle1模式开发应用程序后.人们開始注重软件的分层设计,不希望在jsp页面中出现java逻辑代码,同一时候也 ...

  6. jstl 中<c:forEach />标签

    <c:forEach>标签有如下属性: 属性 描述 是否必要 默认值 items 要被循环的信息 否 无 begin 开始的元素(0=第一个元素,1=第二个元素) 否 0 end 最后一个 ...

  7. JSTL的c:forEach标签(${status.index})

    <c:forEach>标签具有以下一些属性: var:迭代参数的名称.在迭代体中可以使用的变量的名称,用来表示每一个迭代变量.类型为String. items:要进行迭代的集合.对于它所支 ...

  8. 详解JSTL的forEach标签

    详解JSTL的forEach标签 为循环控制,它可以将集合(Collection)中的成员循序浏览一遍.      <c:forEach> 标签的语法 说明 : 语法:迭代一集合对象之所有 ...

  9. jstl的foreach标签

    jsp支持丰富的jstl标签语言(需要jar包支持),其中list循环(迭代)用的是<c:forEach></c:forEach>标签. 这个标签的作用就是迭代输出标签内部的内 ...

随机推荐

  1. django authenticate

    程序少不了验证用户与权限分配.通过 Django 自带以及我们一些扩展就能够满足验证与权限的需求. 我在使用 Django 遇到的"login(request, user) 之后,再重定向这 ...

  2. Gradle 10分钟上手指南

    java的源码构建工具,大致经历了 ant -> maven -> gradle 这个过程,每一次进步,都是在解决之前的工具所带来的问题,简单来说: 1. ant 功能虽然也很强大,但是过 ...

  3. [LintCode] Longest Increasing Subsequence 最长递增子序列

    Given a sequence of integers, find the longest increasing subsequence (LIS). You code should return ...

  4. 万能的林萧说:一篇文章教会你,如何做到招聘要求中的“要有扎实的Java基础”。

    来历 本文来自于一次和群里猿友的交流,具体的情况且听LZ慢慢道来. 一日,LZ在群里发话,"招人啦." 然某群友曰,"群主,俺想去." LZ回之,"你 ...

  5. winform采集网站美女图片程序---多线程篇

    设定思路: 采集目标: http://www.8kmm.com,   已知网址列表(List保存),  应用多线程(Thread)读取该列表, 获取url时不能重复(加锁Lock). 允许无序采集! ...

  6. hbase-0.94 Java API

    Hierarchy For Package org.apache.hadoop.hbase Package Hierarchies: All Packages Class Hierarchy java ...

  7. BZOJ3083: 遥远的国度

    传送门 BZOJ100题辣(已经无法直视的正确率 树剖板子题,注意和dfs序结合,根据根的变化变换统计的方式即可. //BZOJ 3083 //by Cydiater //2016.10.23 #in ...

  8. js函数传参

    函数传参:重用代码,首先保持html代码相对一致,把核心主程序用函数包起来,把每组不同的值找出来,通过传参的方式减少代码的使用 下面代码是我早期练习的,大家随便看看就好 <!DOCTYPE ht ...

  9. 树莓派笔记之使用netselect选择最快Raspbian软件源

    背景: 之前在葉難大大的部落格里看到有讲可以使用netselect查找最快软件源,今天正好看到, 特此记下来,因为之前一直使用中国科学技术大学的源,结果发现不是我这里最快的. 注意: 以下仅对Rasp ...

  10. C++箴言:理解typename的两个含义

    C++箴言:理解typename的两个含义 问题:在下面的 template declarations(模板声明)中 class 和 typename 有什么不同? template<class ...