开发者学堂课程【JSP 快速入门:forEach 中的循环状态变量】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/33/detail/736
forEach 中的循环状态变量
内容简介:
1.循环状态
2.总结
1.循环状态
forEach 标签还有一个属性: varStatus,这个属性用来指定接收“循环状态“的变量名,例如:<forEach varStatus="vs" …/>,这时就可以使用vs这个变量来获取循环的状态了。
●count:int 类型,当前以遍历元素的个数;
●index:int 类型,当前元素的下标;
●first:boolean类型,是否为第一个元素;
●last:boolean类型,是否为最后一个元素;
●current:Object 类型,表示当前项目。
<c:forEach var="item" items="${ns }" varStatus="vs ">
<c:if test="${vs.first }>第一行: </c:if>
<c:if test="${vs.last }”>最后一行: </c:if>
<c:out value="第${vs.count }行: "/>
<c:out value=" ${vs.index }: "/>
<c:out value="name: ${vs.current }”/><br/>
</c:forEach>
1)演示代码如下:
<br/>
<%
ArrayList<String> list =new ArrayList<String>();
list.add("一") ;
list.add("二") ;
list.add("三");
pageContext . setAttribute ("list", list);
%>
<c:forEach items="${list }" var="ele”>
${ele } <br/>
</c:forEach>
2)创建循环变量的代码如下:
<hr/>
<%
ArrayList<String> list =new ArrayList<String>();
list.add("一") ;
list.add("二") ;
list.add("三");
pageContext . setAttribute ("list", list);
%>
<c:forEach items="${list }" var="ele”varStatus=“vs”>
${vs.count } <br/>
</c:forEach>
其中,count 表示循环了几个元素。
执行结果如下:
1
2
3
3)代码中加入index:
<c:forEach items="${list }" var="ele”varStatus=“vs”>
${vs.index} ${vs.count } <br/>
Index 表示当前元素的下标,第一个元素的下标是0,当遍历第一个元素的时候,遍历了一个元素,所以执行结果如下:
0 1
1 2
2 3
4)再加入 first、last,代码如下:
<c:forEach items="${list }" var="ele”varStatus=“vs”>
${vs.index} ${vs.count } ${vs.first } ${vs.last } <br/>
执行结果如下:
0 1 true false
1 2 false false
2 3 false true
如果现在把这几个被遍历的元素打印出来,中间用逗号隔开,那么最后一个元素后面就不用加逗号了,可以用 last 去判断。
5)最后加入current,当前对象,代码如下:
<c:forEach items="${list }" var="ele”varStatus=“vs”>
${vs.index} ${vs.count } ${vs.first } ${vs.last } ${vs.current }<br/>
执行结果如下:
0 1 true false一
1 2 false false 二
2 3 false true 三
2.总结
可以使用 varstatus 来创建循环状态变量
循环状态变量有如下属性:
* count:循环元素的个数
* index:循环元素的下标
* first:是否为第一个元素
* last:是否为最后一个元素
* current:当前元素
<c:forEach items="${list }" var="ele" varStatus"vs">
${vs.index} ${vs.count } ${vs.first } ${vs.last } ${vs.current }<br/>
</c: forEach>