且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

forEach 中的循环状态变量|学习笔记

更新时间:2022-08-29 18:52:13

开发者学堂课程【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>