首页  >  文章  >  Java  >  如何在 JSTL 中迭代 HashMap 中的 ArrayList?

如何在 JSTL 中迭代 HashMap 中的 ArrayList?

DDD
DDD原创
2024-10-24 16:13:02206浏览

How to Iterate over an ArrayList within a HashMap in JSTL?

在 JSTL 中迭代 HashMap 中的 ArrayList

在 Java Server Pages (JSP) 中,Java 标准标记库 (JSTL) 提供了便捷的方法用于迭代数据结构的标签。这包括迭代映射,其中每个键值对都存储为 Map.Entry 对象。

要迭代 HashMap 的键和值,包括任何存储为值的 ArrayList,您可以使用嵌套标签如下:

<code class="jsp"><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<c:forEach items="${myMap}" var="entry">
    <span>Key: ${entry.key}</span>
    
    <c:forEach items="${entry.value}" var="item" varStatus="loop">
        <span>Value: ${item}</span>
        <c:if test="${!loop.last}">, </c:if>
    </c:forEach>
    
    <br>
</c:forEach></code>

此代码迭代 myMap HashMap,对于每个键值对,输出键,后跟相应 ArrayList 中的值列表。 varStatus 属性用于确定当前项目是否是列表中的最后一项,因此仅当不是最后一项时,才会在项目之间添加逗号。

附加说明:

  • 对于更复杂的场景,您可能需要将entry.key和entry.value对象转换为适当的类型。
  • 嵌套的标签将 ArrayList 作为一个整体进行迭代,因此如果您需要访问 ArrayList 中的各个元素,则需要使用额外的逻辑。

以上是如何在 JSTL 中迭代 HashMap 中的 ArrayList?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn