这是一个简单的java编码问题。
我有一个String
[Say "hello" "how" "are" "you?"
]列表。我需要在列表的每个元素之间插入分隔符[-
],以便我的输出为hello-how-are-you?
这样做的一个简单方法如下:
private static String addDelim(List<String> a)
{
String s = "";
for(int i=0; i<a.size(); i++)
{
if(i != 0) // don't add if first element
{
s += "-";
}
s += a.get(i);
}
return s;
}
有没有优雅的方法呢?
答案 0 :(得分:5)
如果您可以包含Guava(强烈推荐),那么解决方案将是:
return Joiner.on("-").join(s);
答案 1 :(得分:2)
String out = StringUtils.join(yourList, '-');
答案 2 :(得分:1)
如果您不想使用外部库,最好使用StringBuilder
:
private static String addDelim(List<String> a) {
StringBuilder sb = new StringBuilder();
for(int i=0; i < a.size(); i++) {
if(i != 0)
sb.append("-");
sb.append(a.get(i));
}
return sb.toString();
}
答案 3 :(得分:1)
StringBuilder sb = new StringBuilder();
for(String str: a){
sb.append(str).append('-');
}
sb.deleteCharAt(sb.length() -1);