junsheng100 2011-09-05 13:48
浏览 244
已采纳

java如何反转泛型?

如题:已知一个 关于类型的字符串(如“Map>”),现在需要根据这个字符串,获得一个Map>对象和该对象的Type?

  • 写回答

4条回答 默认 最新

  • _1_1_7_ 2011-09-05 15:49
    关注

    Map和List 都是接口,要从字符串"Map>"获得一个Map>对象?问题本身有问题,实例是HashMap>还是TreeMap>还是其他的实现。。。

    public static void main(String[] args) throws Exception {       Map<String, List<String>> b = getInstance("Map<String, List<String>>");
        System.out.println(b.getClass());
    }
    
    public static <T> T getInstance(String type) throws Exception {
        Class clazz = Class.forName(getClassName(type));
        return (T) clazz.newInstance();
    }
    
    private static String getClassName(String type) {
        if (type.startsWith("Map"))
            return "java.util.HashMap";
        return "java.lang.Object";
    }
    

    java泛型的类型应该不包括参数的类型,编译后被擦除了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥15 python爬取bilibili校园招聘网站
  • ¥30 求解达问题(有红包)
  • ¥15 请解包一个pak文件
  • ¥15 不同系统编译兼容问题
  • ¥100 三相直流充电模块对数字电源芯片在物理上它必须具备哪些功能和性能?