转换列表<字符串>Java中的字符串[]

2022-01-13 00:00:00 type-conversion java

如何转换 列表将字符串转换为 数组?以下代码返回错误.

How do I convert a list of String into an array? The following code returns an error.

public static void main(String[] args) {
    List<String> strlist = new ArrayList<String>();
    strlist.add("sdfs1");
    strlist.add("sdfs2");
    String[] strarray = (String[]) strlist.toArray();       
    System.out.println(strarray);
}

错误:

Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;
    at test.main(test.java:10)

推荐答案

你想要的

String[] strarray = strlist.toArray(new String[0]);

参见这里 获取文档并注意,您还可以通过填充传递的数组的方式调用此方法,而不仅仅是使用它来计算要返回的类型.另请注意,当您打印数组时,您可能更喜欢

See here for the documentation and note that you can also call this method in such a way that it populates the passed array, rather than just using it to work out what type to return. Also note that maybe when you print your array you'd prefer

System.out.println(Arrays.toString(strarray));

因为这将打印实际的元素.

since that will print the actual elements.

相关文章