转换异常将列表转换为数组

spl*_*123 0 java string casting arraylist

我想从列表开始构建一个数组数组,但是我得到了一个转换异常.谁知道为什么?这是代码

List<String[]> listofarray=new ArrayList<String[]>();
//...filling the list...
String[][] ob= (String[][]) listofarray.toArray();
Run Code Online (Sandbox Code Playgroud)

Roh*_*ain 5

List#toArray()没有任何参数的方法返回一个Object[].您需要使用重载的通用版本 - 作为参数List#toArray(T[])传递String[][].那你就不需要把结果强制转换了.

String[][] ob= listofarray.toArray(new String[listofarray.size()][]);
Run Code Online (Sandbox Code Playgroud)

  • 没有必要添加`(String [] [])`cast. (2认同)