将逗号分隔的ArrayList值转换为String-Java
我正在尝试获取字符串值,如下所示将逗号分隔的ArrayList值转换为String-Java,java,arraylist,comma,Java,Arraylist,Comma,我正在尝试获取字符串值,如下所示 "one","two","three", "four", 但我现在得到的是 "one","two","three, four", 这是代码,我在ArrayList中有一个逗号分隔的值,但我想将逗号分隔的值作为两个不同的值,而不是一个 ArrayList<String> list = new ArrayList<String>(); list.add("one"); list.add("two"); list.add("three, f
"one","two","three", "four",
但我现在得到的是
"one","two","three, four",
这是代码,我在ArrayList中有一个逗号分隔的值,但我想将逗号分隔的值作为两个不同的值,而不是一个
ArrayList<String> list = new ArrayList<String>();
list.add("one");
list.add("two");
list.add("three, four");
String listString = "";
for (String s : list)
{
listString += "\"" + s + "\",";
}
System.out.println(listString);
ArrayList list=new ArrayList();
列表。添加(“一”);
列表。添加(“两个”);
列表。添加(“三,四”);
字符串listString=“”;
用于(字符串s:列表)
{
listString+=“\”+s+“\”,“;
}
System.out.println(listString);
可能吗?如果是,我该怎么做?您的问题是ArrayList不会在逗号上自动拆分。如果将“三,四”添加到ArrayList中,则将添加一个值为“三,四”的条目 因此,您需要自己拆分“三,四”-拆分方法返回一个数组:
String[] strings = "three, four".split(", ");
list.add(strings[0]);
list.add(strings[1]);
请记住,split方法的参数是一个正则表达式-在这种情况下它不会有任何区别,但在某些情况下它可能是一个gotcha。当您遍历列表时,您可以检查字符串是否包含逗号,如果包含逗号,则使用string.split(“,”)按“,”拆分然后用您想要的格式打印每个字符串
ArrayList不会拆分第三个条目。它只是假设它是一个单一的字符串条目,因此您可以得到您看到的结果。这将按预期完成:
list.addAll(Arrays.asList("three, four".split(",")));
是的,这是可能的,但您需要进行拆分。