将Array元素添加到String

时间:2013-04-04 13:52:13

标签: java arrays string

我正在创建一个刽子手游戏,长话短说,是否有一种快捷方式可以将这些单独的字符串组合成一个字符串,而不是像下面这样做?

String after = under[0] + under[1] + under[2] + under[3] + under[4] + under[5] + under[6] + under[7] + under[8] + under[9] + under[10] + under[11] + under[12] + under[13] + under[14] + under[15] + under[16] + under[17] + under[18] + under[19] + under[20] + under[21];

6 个答案:

答案 0 :(得分:2)

您可以使用循环来完成此操作:

StringBuilder sb = new StringBuilder();
for (int i = 0 ; i != 22 ; i++) {
    sb.append(under[i]);
}
String after = sb.toString();

您还可以将字符串添加到最初为空的字符串,但这不是最理想的,因为所有中间字符串都在循环中分配和释放。

答案 1 :(得分:1)

始终使用循环来执行这样的重复操作。

此外,建议使用StringBuilder代替String。 JAVA中的字符串是不可变的。

StringBuilder sb = new StringBuilder();
int nCount = 22;

for (int iCnt = 0 ; iCnt <= nCount ; iCnt++) {
    sb.append(under[iCnt]);
}
String after = sb.toString();

答案 2 :(得分:0)

试一试:

String after = "";

for (int i=0; i<22; i++)
    after += under[i];

答案 3 :(得分:0)

此代码不短,但不那么乏味:

StringBuilder afterBldr = new StringBuilder();
for (String underEl : under) {
     afterBldr.append(underEl);
}
String after = afterBldr.toString();

答案 4 :(得分:0)

如果您有权访问Apache Commons库,请使用join()方法,这是最好的解决方案:

String str = StringUtils.join(under, "");

答案 5 :(得分:0)

可以在这里使用Apache Joiner

Joiner.on("").join(names)