关于java:字符串到单个字符串的队列

Queue of strings to single string

本问题已经有最佳答案,请猛点这里访问。

我对编程有点陌生,如果这是愚蠢的,那么很抱歉。

我有一个字符串队列,我想将其转换为一个空格分隔的字符串。

例如,{"a","b","c"}应变为"a b c"

我该怎么做呢?(我在谷歌上搜索过,但没有找到太多:/)


我不知道你所说的"队列"是什么意思,但是我假设它是一个数组,我的答案是基于这个假设得出的。

要组合它们,请尝试执行此操作。

1
2
3
4
5
6
7
8
9
String[] myStringArray = new String[]{"a","b","c"};
String myNewString ="";
for (int i = 0; i < myStringArray.length; i++) {
    if (i != 0) {
        myNewString +="" + myStringArray[i];
    } else {
        myNewString += myStringArray[i];
    }
}

现在,EDOCX1[2]的值等于EDOCX1[3]

编辑:

为了不使用每个循环的if,请使用以下方法:

1
2
3
4
5
String[] myStringArray = new String[]{"a","b","c"};
String myNewString = myStringArray[0];
for (int i = 1; i < myStringArray.length; i++) {
    myNewString +="" + myStringArray[i];
}


我将使用apache StringUtils类的join方法(http://commons.apache.org/proper/commons lang/javadocs/api-2.6/org/apache/commons/lang/stringutils.html)。


1
2
3
4
5
String[] strings = {"a","b","c" };
String result ="";
for (int i = 0; i < strings.length; i++) {
  result += strings[i] + ((i < strings.length - 1) ?"" :"");
}

结果是"a b c"


这个代码可能不起作用,我没有测试它,但是您应该理解逻辑。

1
2
3
4
5
6
7
8
9
//This string is your queue
String[] strings = new String[];

//This is your finished String
String string ="";

for(int i = 0; i < strings.length; i++) {
    string = string +"" + strings[i];
}


您还可以使用以下基本逻辑:

1
2
3
4
5
StringBuilder builder = new StringBuilder();
for(String inStr : arrInData) {
    builder.append(inStr+"");
}
return builder.toString();