当List的size为0时,如何获取List中泛型的类型

根据我自己的浅薄知识,List的泛型只是用来进行类型的安全限制的,不是真的存在,有一种叫泛型擦除的概念。

然后在网上找有什么花里胡哨的解决方法,没想到真的找到了。原博客地址:获取List对象的泛型类(原创)

public class Main {


    public static void main(String[] args) {
        //下边这组大括号非常重要
        List<String> list = new ArrayList<String>(){};
        System.out.println(getActualType(list,0));

    }public static String getActualType(Object o,int index) {
        Type clazz = o.getClass().getGenericSuperclass();
        ParameterizedType pt = (ParameterizedType)clazz;
        return pt.getActualTypeArguments()[index].toString();
    }
}