我需要创建一个新的类klazz的数组列表在一个方法中使用它。我:
Class klazz= Integer.class // for example purposes
method( new <?????> ArrayList() );
我迷路了,你能帮帮我吗?(似乎可以在一行代码中完成,或者我完全错了吗?)
我需要它,因为它提供了一个方法http://tips4java.wordpress.com/2008/11/27/bean-table-model/,它将定义其他方法的输出。他们现在返回的是Object,这不是我需要的。
你所需要的是
method(new ArrayList());
泛型是编译时特性,在运行时被擦除。
您可以使用像这样的泛型方法:
public <E> ArrayList<E> getArrayListOf(Class<E> clazz) {
return new ArrayList<E>();
}
如果YourClass是final,生成的List的类型将是List<? extends YourClass>
或List<YourClass>
。