如何在java中创建通用项的多维数组?java:多维通用数组创建
考虑类:
class A<T>
{
T t;
public A(T t) { this.t = t; }
}
当我尝试创建一个多维数组:
A<String>[][] array = new A<String>[2][3];
我收到以下错误:
generic array creation
A<String>[][] array = new A<String>[2][3];
^
我试过如下:
A<String>[][] array = (A<String>[][]) (new Object[2]3]);
但是,这只是抛出:java.lang.ClassCastException
什么是修复?
(我预计人们推荐使用列表请解释如何实现这一目标使用数组。)
你可能想看看http://stackoverflow.com/questions/529085/java-how-to-generic-array-creation和http://stackoverflow.com/questions/3865946/error-generic-数组创建。 – 2011-03-26 21:37:35
坚持数组而不是其他集合类型的原因是什么? – 2011-03-26 21:38:11
您正在将对象[] []投射到A [] [],2不兼容。 –
katsharp
2011-03-26 21:43:22