是否可以使用其实例获取类在Java中具有/接受的类型参数的数量?例如,
Map<String, Integer> s = new HashMap<>();
int numParams = getNumOfTypeParameters(s); // Should return 2
我知道由于类型擦除我们无法获得这些参数的类型,但是我们还能得到参数的数量吗?
答案 0 :(得分:1)
就像
一样简单System.out.println(Map.class.getTypeParameters().length); // 2
System.out.println(Class.class.getTypeParameters().length); // 1
System.out.println(Object.class.getTypeParameters().length); // 0
只需查看java.lang.Class
的文档,然后找到this。