我只发现了这个,但是它不起作用,如果有人帮助我,我会非常感激,因为我是java的新手,这让我很生气lol:
public class ConcatenateStrings {
public static String concateLines(String[] s, String separator) {
String result = "";
if (s.length > 0) {
result = s[0]; // start with the first element
for (int i = 1; i < s.length; i++) {
StringBuilder sb = new StringBuilder(result);
sb.append(separator);
sb.append(s[i]);
result = sb.toString();
}
}
return result;
}
}
答案 0 :(得分:3)
每次都不要创建新的StringBuilder
。
public class ConcatenateStrings {
public static String concateLines(String[] s, String separator) {
String result = "";
StringBuilder sb = new StringBuilder();
if (s.length > 0) {
sb.append(s[0]);
for (int i = 1; i < s.length; i++) {
sb.append(separator);
sb.append(s[i]);
}
}
return sb.toString();
}
}
public static void main(String[] args) {
String[] input = {"Test", "input"};
System.out.println(ConcatenateStrings.concateLines(input, ","));
}
或者使用用户输入:
public static void main(String[] args) {
System.out.println(ConcatenateStrings.concateLines(args, ","));
}
如您所见,您甚至可以删除result
变量。