如何在 c:forEach 中跳过列表的第一个元素

How to skip first element of List in c:forEach

我正在使用 <c:forEach> 迭代 List,如下所示:

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

如何跳过列表第一项的打印?

您可以使用 varStatus 属性获取 iteration status which in turn has among others a isFirst() 方法,您可以在 <c:if> 块中签入该方法。

<c:forEach items="${list}" var="item" varStatus="loop">
    <c:if test="${not loop.first}">
        ${item}
    </c:if>
</c:forEach>

在你的 forEachif 测试中使用 varStatus

<c:forEach items="${list}" var="item" varStatus="state">
    <c:if test="${not state.first}">
       ${item}
    </c:if>
</c:forEach>

其他useful varStatus properties是:

  • current当前轮次迭代的项目(来自集合)
  • index本轮迭代的从零开始的索引
  • count本轮迭代的从一开始计数
  • first 表示当前轮是否是第一次通过迭代的标志
  • last 表示本轮是否为最后一轮迭代的标志
  • begin begin 属性的值
  • end结束属性的值
  • step步骤属性的值