原文: https://beginnersbook.com/2013/11/jstl-cforeach-and-cfortokens-core-tags/

JSTL 中的<c:forEach>标签用于执行有限次数的同一组语句。它类似于 java 中的for循环。当我们需要一次又一次地执行(执行)一组语句指定的次数时,基本上使用它。

<c:forTokens>也用于迭代,但它只适用于分隔符,这意味着使用此标签我们可以根据分隔符将输入数据分成多个部分。我们将在本文的一个例子的帮助下理解这一点。

<c:forEach>标签

<c:forEach>的语法

  1. <c:forEach var="counter_variable_name" begin="intial_value" end="final_limit">
  2. //Block of statements
  3. </c:forEach>

以下是<c:forEach>的三个主要属性。标签。

begin:初始计数器值。
end:循环执行的最终限制
var:计数器变量名

在这个例子中,我们使用<c:forEach>在循环中打印变量计数器的值。标签。循环从值 1 开始(在begin属性中提到)并且在值 10(end属性的值)处结束。

  1. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
  2. <html>
  3. <head>
  4. <title>Example c:forEach tag in JSTL</title>
  5. </head>
  6. <body>
  7. <c:forEach var="counter" begin="1" end="10">
  8. <c:out value="${counter}"/>
  9. </c:forEach>
  10. </body>
  11. </html>

输出:

JSTL`<c:forEach>`和`<c:forTokens>`核心标签 - 图1

<c:forTokens>标签

<c:forTokens>语法

<c:forTokens items="value(s)" delims="delimiter" var="variable_name">
 //Set of statements
</c:forTokens>

以下是<c:forTokens>的三个主要属性。标签。

items:数据值集。
delims:分隔符可以有任何值。它可以是数字,字符串或特殊字符。
var:存储子字符串的变量名。

示例

在这个例子中,我们使用分隔符点('.')将字符串拆分为多个子字符串。

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title>Example c:forTokens tag in JSTL</title>
</head>
<body>
<c:forTokens items="www.beginnersbook.com" delims="." var="site">
 <c:out value="${site}"/>
</c:forTokens>
</body>
</html>

输出:

JSTL`<c:forEach>`和`<c:forTokens>`核心标签 - 图2