以列表转换为逗号的最佳方式在java中分离串[复制](Best way to convert lis

2019-08-19 13:35发布

这个问题已经在这里有一个答案:

  • 什么是Java构建分隔项的字符串的最佳方式? 35个回答

我已经Set<String> result和想将其转换为逗号分隔字符串。 我的方法是如图6-8所示,而是寻找其他的意见为好。

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;

Answer 1:

从Apache的共享库:

import org.apache.commons.lang3.StringUtils

使用:

StringUtils.join(slist, ',');

另一个类似的问题和答案在这里



Answer 2:

你可以先算字符串的总长度,并把它传递到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


Answer 3:

Separator使用的是一个UI组件。 你会过得更好使用一个简单的String sep = ", "



文章来源: Best way to convert list to comma separated string in java [duplicate]