forEach使用
<%
String [] arr = {"yy" ,"qq" ,"ee"};
//必须先设置到域中,下面的EL表达式中才能拿到这个对象
pageContext.setAttribute("arr", arr);
%>
<!-- forEach循环 -->
<c:forEach items="${arr }" var="str">
<c:out value="${str }"></c:out>
</c:forEach>
<c:out value="${123 }"></c:out>
<c:forEach begin="1" end="10" var="ss">
<c:out value="${ss }"></c:out>
</c:forEach>
可以遍历集合,list map等等
JSTL的另外一个属性:
forEach标签还有一个属性:varStatus,这个属性用来指定接收“循环状态”的变量名,例如:<forEach varStatus=”vs” …/>,这时就可以使用vs这个变量来获取循环的状态了。
current当前这次迭代的(集合中的)项
index当前这次迭代从 0 开始的迭代索引
count当前这次迭代从 1 开始的迭代计数
first用来表明当前这轮迭代是否为第一次迭代的标志
last用来表明当前这轮迭代是否为最后一次迭代的标志
<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>