如何在Java中将ArrayList<String>转换为String[]数组?
大家好!我是Java新手,在处理集合时遇到了问题。我需要将ArrayList中的字符串列表传递给一个只接受普通String[]数组的方法。
我尝试了简单的类型转换,但编译器抛出了ClassCastException错误。这是我的代码:
```java
ArrayList list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("cherry");
// 尝试转换为数组
String[] array = (String[]) list.toArray(); // 错误!
```
文档中说`toArray()`方法返回的是Object[],而不是String[]。如何正确地从ArrayList获取字符串数组?我听说有一种方法可以传递空数组给该方法,但我不明白它是如何工作的。
请告诉我正确的转换方法。重要的是保持元素顺序,并且数组必须是String[],而不是Object[]。提前感谢您的帮助!
<<>>