【发布时间】:2014-03-30 06:48:45
【问题描述】:
我对编程有点陌生,如果这是愚蠢的,请见谅..
我有一个字符串队列,我想变成一个以空格分隔的字符串。
例如{"a","b","c"}应该变成"a b c"
我该怎么做呢? (我用谷歌搜索了这个并没有找到太多:/)
【问题讨论】:
-
我们能看到某种尝试吗?
-
为什么需要队列?你是说数组吗?
标签: java
我对编程有点陌生,如果这是愚蠢的,请见谅..
我有一个字符串队列,我想变成一个以空格分隔的字符串。
例如{"a","b","c"}应该变成"a b c"
我该怎么做呢? (我用谷歌搜索了这个并没有找到太多:/)
【问题讨论】:
标签: java
你也可以使用如下的基本逻辑:
StringBuilder builder = new StringBuilder();
for(String inStr : arrInData) {
builder.append(inStr+" ");
}
return builder.toString();
【讨论】:
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"。
【讨论】:
我不确定您所说的“队列”是什么意思,但我会假设它是一个数组,并且我的答案基于该假设。
为了组合它们,请尝试这样做。
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];
}
}
现在,myNewString 的值等于"a b c"
编辑:
为了不使用if 每个循环,请改用这个:
String[] myStringArray = new String[]{"a", "b", "c"};
String myNewString = myStringArray[0];
for (int i = 1; i < myStringArray.length; i++) {
myNewString += " " + myStringArray[i];
}
【讨论】:
if 只评估一次?
这段代码可能行不通,我没有测试过,但你应该明白其中的逻辑。
//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];
}
【讨论】:
我会使用 Apache StringUtils 类 (http://commons.apache.org/proper/commons-lang/javadocs/api-2.6/org/apache/commons/lang/StringUtils.html) 的 join 方法。
【讨论】: