如何创建泛型类型的数组?通用Arrays.copyOf()
方法如何工作?它返回泛型数组的副本。因此可以创建通用数组。但是怎么样?如何编写类似于copyOf()
的方法?
答案 0 :(得分:6)
如果你需要在运行时创建它,你至少需要知道当时的类型,所以你可以使用以下方法:
a = (T[]) Array.newInstance(c,s);
其中T
是通用类型,c
是T
的类,s
是初始大小。
文档here
答案 1 :(得分:-2)
我对你的要求感到困惑,但我会尽力回答。
如果要创建泛型类型的数组,则必须使用泛型对包含该数组的类进行参数化。例如,这有效:
class MyClass<T> {
T[] myGenericArray;
}
在大多数情况下,我打赌你正在做的事情可以通过Object []或类似的东西来实现,尽管如果你提出更具体的问题,我可以提供更多的帮助。