English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Теги <c:forEach> , <c:forTokens>

Стандартная библиотека тегов JSP

Эти теги обертывают циклы for, while, do-while в Java.

Напротив, тег <c:forEach> является более универсальным тегом, так как он итерирует по объектам в集合е.

Тег <c:forTokens> разделяет строку по заданным разделителям на массив и итерирует по нему.

Грамматический формат forEach

<c:forEach
    items="<object>"
    begin="<int>"
    end="<int>"
    step="<int>"
    var="<string>"
    varStatus="<string>"
    ...

Грамматический формат forTokens

<c:forTokens
    items="<string>"
    delims="<string>"
    begin="<int>"
    end="<int>"
    step="<int>"
    var="<string>"
    varStatus="<string>"

атрибут

У тега <c:forEach> есть следующие атрибуты:

атрибут описание необязательно default value
items информация, которую нужно циклически обрабатывать нет Нет
begin начальный элемент (0 = первый элемент, 1 = второй элемент) нет 0
end последний элемент (0 = первый элемент, 1 = второй элемент) нет Последний элемент
step шаг каждого итерации нет 1
var имя переменной текущего элемента нет Нет
varStatus имя переменной состояния цикла нет Нет

Тег <c:forTokens> имеет аналогичные атрибуты, как и тег <c:forEach>, но у <c:forTokens> есть еще один атрибут:

атрибут описание необязательно default value
делimiters Разделитель Да Нет

Пример <c:forEach>

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title>c:forEach пример тега</title>
</head>
<body>
<c:forEach var="i" begin="1" end="5">
   Элемент <c:out value="${i}"/><p>
</c:forEach>
</body>
</html>

Результат выполнения таков:

Элемент 1
Элемент 2
Элемент 3
Элемент 4
Элемент 5

Пример <c:forTokens>

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title>c:forTokens пример тега</title>
</head>
<body>
<c:forTokens items="google,w3codebox,taobao" delims="," var="name">
   <c:out value="${name}"/><p>
</c:forTokens>
</body>
</html>

Результат выполнения таков:

google
w3codebox
taobao

Стандартная библиотека тегов JSP