我需要将一个字符串“:”附加到字符串数组列表中的每个元素,并作为一个单独的字符串连接。
例如:我有包含元素的数组列表
(abc,def,ghi)
我需要将结果显示为“abc:def:ghi”作为一个字符串。
答案 0 :(得分:6)
您可以使用恰好与GWT兼容的Google's Guava Joiner:
String joinedList = Joiner.on(":").join(listOfThings);
答案 1 :(得分:1)
ArrayList<String> str = new ArrayList<String>();
str.add("AAA");
str.add("BBB");
str.add("CCC");
StringBuilder str2 = new StringBuilder();
for (String s : str) {
str2.append(s + ":");
}
// if you want to remove the last ':'
str2.deleteCharAt(str2.length() - 1);
答案 2 :(得分:0)
Guava是一个真正非常酷的库,但是如果你只需要这个小部分,你就可以在你的列表中使用foreach进行迭代。这是一个例子
package XXX.client.XXXXXX;
import java.util.Arrays;
import java.util.List;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.RootPanel;
public class JointString {
public JointString() {
List<String> list = Arrays.asList("abc", "def", "ghi");
StringBuilder all = new StringBuilder();
for (String string : list) {
all.append(string);
all.append(":");
}
RootPanel.get().add(new Label(all.toString()));
//if you don't want the ':' in the end...
StringBuilder all2 = new StringBuilder();
for (int i = 0; i < list.size() - 1; i++) {
all2.append(list.get(i));
all.append(":");
}
all2.append(list.get(list.size() - 1));
RootPanel.get().add(new Label(all2.toString()));
}
}