关于java:使用逗号分隔将ArrayList数据转换为指定的String []?

Convert ArrayList data to specified String[] with comma seperated?

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

Possible Duplicate:
Convert ArrayList to String []

如何将ArrayList转换为String[]

例如,我的ArrayList

1
arrlist=[audio,video,song,tech]

我想把它转换成这样的一个String[]

1
2
3
String[] data;

data={"audio","video","song","tech"};

我的问题是,ArrayList数据可以动态更改,但我希望在有限大小的数组中使用返回格式。


您可以使用toArray(T[])

1
2
ArrayList<?> foo;
String[] data = foo.toArray(new String[foo.size()]);

您不必为此函数传递非零长度数组,但是如果这样做并且它足够大,to array将简单地使用它,如果不这样做,toarray将进行第二次分配。这并不是一个很好的优化点,而是标准约定。

还要注意,String[]不是不变的,它只是固定的大小。ArrayListString[]都允许您的数据"更改";如果您想要一个不可变的列表(一个不能编辑且内容不能替换的列表),您可以在google guava中找到一个,或者实现您自己的琐事。


将arraylist转换为string[]数组

1
2
3
4
5
6
7
 ArrayList<String> stock_list = new ArrayList<String>();
    stock_list.add("stock1");
    stock_list.add("stock2");
    String[] stockArr = new String[stock_list.size()];
    stockArr = stock_list.toArray(stockArr);
    for(String s : stockArr)
        System.out.println(s);

来自http://viralpatel.net/blogs/2009/06/convert-arraylist-to-arrays-in-java.html