JSP 中每个标记的逗号分隔值

2022-09-03 09:15:58

我正在尝试让JSTL标签工作,以便它将打印名称列表,如下所示:<c:forEach>

Best, Milo, Kane

我的代码如下:

<c:forEach items="${persons}" var="person">
    ${person.name}, 
</c:forEach>

但是,在最后一个人/姓名上,在末尾插入逗号,例如

Best, Milo, Kane,

如何避免循环中的最后一个逗号?


答案 1

你可以使用LoopTagStatus#isLast

<c:forEach items="${persons}" var="person" varStatus="loop">
    ${person.name}
   <c:if test="${!loop.last}">,</c:if>
</c:forEach>

更简单的解决方案是在 in 中使用条件运算符而不是标记ELif

${!loop.last ? ',' : ''}

答案 2