将 ArrayList 数据转换为以逗号分隔的指定 String[]? [复制]
Posted
技术标签:
【中文标题】将 ArrayList 数据转换为以逗号分隔的指定 String[]? [复制]【英文标题】:Convert ArrayList data to specified String[] with comma seperated? [duplicate] 【发布时间】:2012-06-02 20:23:37 【问题描述】:可能重复:Convert ArrayList<String> to String []
如何将ArrayList
转换为String[]
?
比如我的ArrayList
是
arrlist=[audio,video,song,tech]
我想将其转换为 String[]
,如下所示:
String[] data;
data= "audio","video","song","tech";
我的问题是 ArrayList
数据可以动态更改,但我想要一个有限大小数组中的返回格式。
【问题讨论】:
试过 java.util.ArrayList.toArray() 方法吗? 请用谷歌搜索,这很简单顺便说一句***.com/questions/5374311/… 【参考方案1】:你可以使用toArray(T[])
:
ArrayList<?> foo;
String[] data = foo.toArray(new String[foo.size()]);
您不必将非零长度数组传递给此函数,但如果您这样做并且它足够大,toArray 将简单地使用它,如果您不这样做,则 toArray 将进行第二次分配。这不是一个很好的优化点。相反,这是标准约定。
还要注意String[]
不是不可变的,它只是固定大小。 ArrayList
和 String[]
都将允许您的数据“更改”;如果你想要一个不可变的列表(一个无法编辑且内容无法替换的列表),你可以在 Google Guava 中找到,或者自己实现。
【讨论】:
【参考方案2】:来自
Convert ArrayList<String> to String[] array
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
【讨论】:
复制和粘贴其他答案不是很好... 我正在提供参考,这就是为什么我也提到了原始链接。 如果两个问题相同,我认为没有任何问题,那么给出另一个问题的参考有什么问题......我没有在同一个帖子中复制答案......跨度> 这样的事情将作为 cmets 来完成,而不是答案。参考文献+新观点,关于答案的新事物可以作为答案发布。但不应该只是复制粘贴。 @Kazekage Gaara 同意了......未来会记住......以上是关于将 ArrayList 数据转换为以逗号分隔的指定 String[]? [复制]的主要内容,如果未能解决你的问题,请参考以下文章