将arrayList <Object []>转换为嵌套数组

时间:2019-06-12 14:44:28

标签: java

这是以下想法:

List<Object[]> ret = new ArrayList<>();
ret.add(new Object[]{"a", 1});
Object[][] obj = (Object[][]) ret.toArray();

但它不起作用:toArray返回Object []

Caused by: java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [[Ljava.lang.Object;

有什么主意吗?

1 个答案:

答案 0 :(得分:5)

toArray版,它接受数组作为参数。这使您可以指定要返回的数组类型。

Object[][] obj = ret.toArray(new Object[0][]);

您可以传递足够大的数组以容纳列表的内容;或者您可以传入零大小的数组,列表实现应返回与您传入的数组相同类型的新数组。