Java 需要打印不带“括号”的ArrayList
大家好,我有一个arraylist在jsp上显示为[MCA、MCB、COMM、DMISA] 我在jsp上调用它:Java 需要打印不带“括号”的ArrayList,java,jsp,arraylist,jsp-tags,Java,Jsp,Arraylist,Jsp Tags,大家好,我有一个arraylist在jsp上显示为[MCA、MCB、COMM、DMISA] 我在jsp上调用它: <td>${bean.CodesNames}</td> 在bean中,getter是: public void setCodesNames(ArrayList<String> CodesNames) { this.CodesNames = CodesNames; } 如果没有括号,我如何显示该列表?您可以获得括号,因为ArrayList
<td>${bean.CodesNames}</td>
在bean中,getter是:
public void setCodesNames(ArrayList<String> CodesNames)
{
this.CodesNames = CodesNames;
}
如果没有括号,我如何显示该列表?您可以获得括号,因为ArrayListtoString是隐式调用的,以便将列表转换为可打印的字符串。您可以通过自己在JSP中打印列表来解决此问题: ${item}, 或使用bean getter返回字符串:
public String getCodesNamesAsString()
{
// using a Guava Joiner
return Joiner.on(",").useForNull("null").join(getCodesNames());
}
如果您不熟悉番石榴,请参阅。您将获得括号,因为ArrayListtoString是隐式调用的,以便将列表转换为可打印字符串。您可以通过自己在JSP中打印列表来解决此问题: ${item}, 或使用bean getter返回字符串:
public String getCodesNamesAsString()
{
// using a Guava Joiner
return Joiner.on(",").useForNull("null").join(getCodesNames());
}
如果您不熟悉番石榴,请参阅。您需要对其进行迭代。不要依赖toString
备注:此处的是可选的。您需要迭代它。不要依赖toString
PS:在这里是可选的。您可以实现getter,它使您需要格式化
public String getCodesNamesFormatted()
{
// format as you like
}
然后使用它
<td>${bean.codesNamesFormatted}</td>
您可以实现getter,它使您需要格式化
public String getCodesNamesFormatted()
{
// format as you like
}
然后使用它
<td>${bean.codesNamesFormatted}</td>
添加另一个getter方法:
public void getCodesNamesFormatted()
{
StringBuilder sb = new StringBuilder();
for (String codeName : CodesNames) sb.append(codeName).append(',');
return sb.deleteCharAt(sb.length());
}
并从JSP调用它:
<td>${bean.codesNamesFormatted}</td>
添加另一个getter方法:
public void getCodesNamesFormatted()
{
StringBuilder sb = new StringBuilder();
for (String codeName : CodesNames) sb.append(codeName).append(',');
return sb.deleteCharAt(sb.length());
}
并从JSP调用它:
<td>${bean.codesNamesFormatted}</td>
这个字符串[MCA,MCB,COMM,DMISA]是由类数组的toString方法生成的。 您需要创建自己的代码,该代码将遍历数组元素并逐个打印它们。 当然,你也可以用肮脏的方式来代替一切。请参见下面的代码了解两种方法: 一, 二,
这个字符串[MCA,MCB,COMM,DMISA]是由类数组的toString方法生成的。 您需要创建自己的代码,该代码将遍历数组元素并逐个打印它们。 当然,你也可以用肮脏的方式来代替一切。请参见下面的代码了解两种方法: 一, 二,
您显示的代码实际上是setter,而不是getter。您显示的代码实际上是setter,而不是getter。在jsp上迭代非常快速…谢谢!!在jsp上迭代非常快…谢谢你!!谢谢你的支持兄弟…我希望我能在这项工作中使用Scriptlet…如果你不是绝对必须的话,不要使用Scriptlet。谢谢你的支持兄弟…我希望我能在这项工作中使用Scriptlet…如果你不是绝对必须的话,不要使用Scriptlet。你不需要一个逗号。是的,我知道。只是为了清楚起见才加上的。你不需要只是一个逗号。是的,我知道。只是为了清晰起见添加了它。