我可以从中得到Class<T>
吗Class<T[]>
?
public static <T> void doSometing(final Class<T[]> arrayType) {
final Class<T> elementType; // = @@?
}
或者,我可以从中得到Class<T[]>
吗Class<T>
?
您可以使用Class.getComponentType()
,尽管该方法无法为您提供泛型类型安全性,因此您需要进行未经检查的强制转换以获得Class<T>
:
public static <T> void doSomething(final Class<T[]> arrayType) {
@SuppressWarnings("unchecked")
final Class<T> componentType = (Class<T>)arrayType.getComponentType();
//etc.
}
反过来看这个问题:获取组件类型的数组类