小编典典

将数组中的元素连接到字符串

java

我有点困惑。我在任何地方都找不到答案;(

我有一个String数组:

String[] arr = ["1", "2", "3"];

然后我通过以下方式将其转换为字符串:

String str = Arrays.toString(arr);
System.out.println(str);

我期望得到字符串"123",但是我却得到了字符串"[1,2,3]"

我该如何在Java中做到这一点?我正在使用Eclipse IDE


阅读 223

收藏
2020-10-07

共1个答案

小编典典

使用 StringBuilder
而不是StringBuffer,因为它比StringBuffer快

样例代码

String[] strArr = {"1", "2", "3"};
StringBuilder strBuilder = new StringBuilder();
for (int i = 0; i < strArr.length; i++) {
   strBuilder.append(strArr[i]);
}
String newString = strBuilder.toString();

这是使用字符串连接的更好解决方案的原因:当连接2个字符串时,将创建一个新的字符串对象,并逐字符进行复制。
有效地意味着代码复杂度将是数组大小的平方的顺序!

1+2+3+ ... n这是每次迭代复制的字符数)。 在这种情况下, StringBuilder
仅执行一次“复制到字符串”操作,从而将复杂度降低到O(n)

2020-10-07