Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在JSTL/JSP中连接循环中的字符串?_Java_String_Jsp_Loops_Concatenation - Fatal编程技术网

Java 如何在JSTL/JSP中连接循环中的字符串?

Java 如何在JSTL/JSP中连接循环中的字符串?,java,string,jsp,loops,concatenation,Java,String,Jsp,Loops,Concatenation,我想连接currentItem.myVar的值并在循环结束时输出它,问题是我不知道如何做 (最好不要使用Java)使用JSP标记定义字符串变量 <c:forEach items="${myParams.items}" var="currentItem" varStatus="stat"> <c:set var="myVar" value="<c:out var="myVar" />" /> </c:forEach> 然后将循环中的变量称为

我想连接currentItem.myVar的值并在循环结束时输出它,问题是我不知道如何做


(最好不要使用Java)

使用JSP标记定义字符串变量

<c:forEach items="${myParams.items}" var="currentItem" varStatus="stat">
  <c:set var="myVar" value="<c:out var="myVar" />" />
</c:forEach>

然后将循环中的变量称为

<%!
String test = new String();
%>

测试+=whaterver_值

也许这样行吗

<c:forEach items="${myParams.items}" var="currentItem" varStatus="stat">
test+= whaterver_value
</c:forEach>

您正在使用JSTL 2.0,对吗?您不需要在所有变量周围放置
。你试过这样的东西吗

<c:forEach items="${myParams.items}" var="currentItem" varStatus="stat">
  <c:set var="myVar" value="${stat.first ? '' : myVar} ${currentItem}" />
</c:forEach>

Edit:被上述问题击败的是JSTL的
join()
,您搜索的是什么

<c:forEach items="${myParams.items}" var="currentItem" varStatus="stat">
  <c:set var="myVar" value="${myVar}${currentItem}" />
</c:forEach>


使用Java不是解决这个问题的方法,我想我需要使用JSTLalmost-1来表示新字符串()。“”怎么样?是的,我理解新字符串()。我错了!这是可以的,除了第一个值是null=/first value null:只需在循环外执行另一个c:set来初始化myVar。然后可能将set标记包装在if?EL不会将
null
值作为
“null”
字符串进行计算。问题出在别的地方。显然,它被错误地设置为
“null”
字符串。感谢Ben和@Subin,它为我节省了很多时间。这没关系,除了第一个值为nullOK外,我添加了一个检查以查看它是否是第一次通过循环。这行得通吗?您可以使用相同的概念来使用如下分隔符连接字符串:
value=“${ids}${stat.first?”,“}${currentItem.id}”
<c:set var="myVar" value="${fn:join(myParams.items, ' ')}" />