我有Set<String> result
&想把它转换成逗号分隔的字符串。我的方法如下所示,但也在寻求其他意见。
List<String> slist = new ArrayList<String> (result);
StringBuilder rString = new StringBuilder();
Separator sep = new Separator(", ");
//String sep = ", ";
for (String each : slist) {
rString.append(sep).append(each);
}
return rString;
发布于 2013-04-04 23:36:34
来自Apache Commons库:
import org.apache.commons.lang3.StringUtils
使用:
StringUtils.join(slist, ',');
另一个类似的问答here
发布于 2013-04-04 23:49:24
您可以先计算字符串的总长度,然后将其传递给StringBuilder构造函数。并且您不需要首先转换集合。
Set<String> abc = new HashSet<String>();
abc.add("A");
abc.add("B");
abc.add("C");
String separator = ", ";
int total = abc.size() * separator.length();
for (String s : abc) {
total += s.length();
}
StringBuilder sb = new StringBuilder(total);
for (String s : abc) {
sb.append(separator).append(s);
}
String result = sb.substring(separator.length()); // remove leading separator
发布于 2013-04-04 23:36:43
您正在使用的Separator
是一个UI组件。使用简单的String sep = ", "
会更好。
https://stackoverflow.com/questions/15815587
复制相似问题