Dans le développement Web, JSTL (JavaServer Pages Standard Tag Library) fournit un ensemble de balises pour simplifier les tâches courantes dans JSP ( Pages du serveur Java). L'une de ces tâches consiste à parcourir les structures de données.
Pour parcourir un HashMap et les ArrayLists qu'il contient, vous pouvez utiliser l'outil
Pour les tableaux et collections, var vous donne l'élément actuellement itéré.
<code class="html"><c:forEach items="${collectionOrArray}" var="item"> Item = ${item}<br> </c:forEach></code>
Pour les cartes , var vous donne un objet Map.Entry, qui a les méthodes getKey() et getValue().
<code class="html"><c:forEach items="${map}" var="entry"> Key = ${entry.key}, value = ${entry.value}<br> </c:forEach></code>
Puisque Entry.value est une liste, parcourez-le également :
<code class="html"><c:forEach items="${map}" var="entry"> Key = ${entry.key}, values = <c:forEach items="${entry.value}" var="item" varStatus="loop"> ${item} ${!loop.last ? ', ' : ''} </c:forEach><br> </c:forEach></code>
L'attribut varStatus améliore la lisibilité en suivant l'état de l'itération de la boucle.
Une implémentation Java similaire ci-dessous aide à comprendre le processus :
<code class="java">for (Entry<String, List<Object>> entry : map.entrySet()) { out.print("Key = " + entry.getKey() + ", values = "); for (Iterator<Object> iter = entry.getValue().iterator(); iter.hasNext();) { Object item = iter.next(); out.print(item + (iter.hasNext() ? ", " : "")); } out.println(); }</code>
Pour référence ultérieure, consultez les ressources suivantes :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!