我有一个ArrayList
对象,它的值是Object
的数组。我想把它转换成一个数组。这是我所做的总结:
ArrayList result = new ArrayList();
Object[] row = new Object[4];
result.add(row);
Object[][] arrayResult = result.toArray();
,但我得到一个错误,我不能把它转换为Object[][]
。我该怎么办?
改成这样:
ArrayList<Object> result = new ArrayList<Object>(); // 1
Object[] row = new Object[4];
result.add(row);
Object[][] arrayResult = result.toArray(new Object[0][0]); // 2
- 你应该有一个类型参数(不真正影响错误,但好的做法)。
-
toArray
没有参数只会给你一个Object[]
,你需要给它一个数组作为一个"例子"。这是由"类型擦除"引起的,你可以从这里读到一点。