在java中编译ArrayList之后,如何将其打印为字符串? 使用ArrayList.toString()
给出了括号括起来的值和它们之间的逗号。如何从ArrayList转换为String?
我想打印它们没有括号,只有它们之间的空格。
在java中编译ArrayList之后,如何将其打印为字符串? 使用ArrayList.toString()
给出了括号括起来的值和它们之间的逗号。如何从ArrayList转换为String?
我想打印它们没有括号,只有它们之间的空格。
为C#
string.Join(" ", _list);
(假设的Java)
你可以写你自己的方法,这样做:
public static <T> String listToString(List<T> list) {
StringBuilder sb = new StringBuilder();
boolean b = false;
for (T o : list) {
if (b)
sb.append(' ');
sb.append(o);
b = true;
}
return sb.toString();
}
或者,如果你使用的番石榴,你可以使用Joiner
:
Joiner.on(' ').join(list)
同样,如果您只是有兴趣的印刷,就可以避免创建一个新的字符串一起:
public static <T> void printList(List<T> list) {
for (T o : list) {
System.out.print(o);
System.out.print(' ');
}
System.out.println();
}
不知道你使用的是什么语言,但尝试之一:
ArrayList.join()
或
ArrayList.toArray().join()
哦,如果你想避免逗号,使用join(“”)。 –
for(int i = 0; i < arraylist.size(); i++){
System.out.print(arraylist.get(i).toString + " ");
}
???
如果您使用的是Eclipse Collections,则可以使用makeString()
方法。
ArrayList<String> list = new ArrayList<String>();
list.add("one");
list.add("two");
list.add("three");
Assert.assertEquals(
"one two three",
ArrayListAdapter.adapt(list).makeString(" "));
如果您可以将您的ArrayList
为FastList
,你可以摆脱适配器。
Assert.assertEquals(
"one two three",
FastList.newListWith("one", "two", "three").makeString(" "));
注:我的Eclipse藏品的参与者。
哪种语言? – Mayank
创建您自己的将ArrayList作为参数的实用程序方法。 – JustinKSU
@Mayank鉴于ArrayList被提及,可能是Java编辑:nevermind –