<c:forEach>標簽用於通用數據循環,它有以下屬性
屬 性 描 述 是否必須 缺省值 items 進行循環的項目 否 無 begin 開始條件 否 0 end 結束條件 否 集合中的最後一個項目 step 步長 否 1 var 代表當前項目的變量名 否 無 varStatus 顯示循環狀態的變量 否 無vaStatus 屬性
JSTL中的varStatus和 var 屬性一樣, varStatus 用於創建限定了作用域的變量。不過,由varStatus 屬性命名的變量並不存儲當前索引值或當前元素,而是賦予 javax.servlet.jsp.jstl.core.LoopTagStatus 類的實例。該類定義了一組特性,它們描述了迭代的當前狀態,下面列出了這些特性:
特性 Getter 描述current getCurrent() 當前這次迭代的(集合中的)項 index getIndex() 當前這次迭代從 0 開始的迭代索引 count getCount() 當前這次迭代從 1 開始的迭代計數 first isFirst() 用來表明當前這輪迭代是否為第一次迭代的標志 last isLast() 用來表明當前這輪迭代是否為最後一次迭代的標志 begin getBegin() begin 屬性值 end getEnd() end 屬性值 step getStep() step 屬性值
用c:forEach 中vaStatus的屬性可以獲得迭代的自身狀態,如:
<c:forEach var="" items="" varStatus="status">
<c:out value="${status.current}"/> 當前對象
<c:out value="${status.index}"/> 此次迭代的索引
<c:out value="${status.count}"/> 已經迭代的數量
<c:out value="${status.first}"/> 是否是第一個迭代對象
<c:out value="${status.last}"/> 是否是最後一個迭代對象
</c:forEach>
<c:forEach>標簽的items屬性支持Java平台所提供的所有標准集合類型。此外,您可以使用該操作來迭代數組(包括基本類型數組)中的元素。它所支持的集合類型以及迭代的元素如下所示:
java.util.Collection:調用iterator()來獲得的元素。
java.util.Map:通過java.util.Map.Entry所獲得的實例。
java.util.Iterator:迭代器元素。
java.util.Enumeration:枚舉元素。
Object實例數組:數組元素。
基本類型值數組:經過包裝的數組元素。
用逗號定界的String:分割後的子字符串。
javax.servlet.jsp.jstl.sql.Result:SQL查詢所獲得的行。
《摘自:http://www.cnblogs.com/draem0507/archive/2012/09/24/2699745.html》
--