In der Webentwicklung stellt JSTL (JavaServer Pages Standard Tag Library) eine Reihe von Tags zur Vereinfachung allgemeiner Aufgaben in JSP bereit ( JavaServer-Seiten). Eine solche Aufgabe ist die Iteration über Datenstrukturen.
Um über eine HashMap und die darin enthaltenen ArrayLists zu iterieren, können Sie JSTLs
Für Arrays und Sammlungen gibt Ihnen var das aktuell iterierte Element.
<code class="html"><c:forEach items="${collectionOrArray}" var="item"> Item = ${item}<br> </c:forEach></code>
Für Karten , var gibt Ihnen ein Map.Entry-Objekt mit den Methoden getKey() und getValue().
<code class="html"><c:forEach items="${map}" var="entry"> Key = ${entry.key}, value = ${entry.value}<br> </c:forEach></code>
Da es sich bei „entry.value“ um eine Liste handelt, iterieren Sie auch darüber:
<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>
Das varStatus-Attribut verbessert die Lesbarkeit, indem es den Iterationsstatus der Schleife verfolgt.
Eine ähnliche Java-Implementierung unten hilft, den Prozess zu verstehen:
<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>
Weitere Informationen finden Sie in den folgenden Ressourcen:
Das obige ist der detaillierte Inhalt vonWie iteriere ich eine ArrayList innerhalb einer HashMap mit JSTL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!