如何从List<T>获得Class<T>
2022-09-02 21:11:15
我觉得不得不问这个问题非常愚蠢,但我不明白为什么下面的Java代码不能编译:
void <T> doSomething(List<T> items) {
Class<? extends T> clazz = items.get(0).getClass();
...
}
来自 Java 文档:
实际结果类型为 Class< ?扩展|X|>|十|是调用 getClass 的表达式的静态类型的擦除。例如,此代码片段中不需要强制转换:
数字 n = 0;类< ?extends Number> c = n.getClass();
编辑: