加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 私有Map,V> multiMap = new HashMap,V>();

发布时间:2020-12-15 05:23:13 所属栏目:Java 来源:网络整理
导读:出什么问题了 private MapListK,V multiMap= new HashMapArrayListK,V(); 编译器说它类型不匹配:无法转换为HashMap ArrayList K,V映射 List K,V.我是否必须提供特定类别的列表?为什么? 解决方法 你必须写 private MapListK,V multiMap= new HashMapListK,
出什么问题了

private Map<List<K>,V> multiMap= new HashMap<ArrayList<K>,V>();

编译器说它类型不匹配:无法转换为HashMap< ArrayList< K>,V>映射< List< K>,V>.我是否必须提供特定类别的列表?为什么?

解决方法

你必须写

private Map<List<K>,V> multiMap= new HashMap<List<K>,V>();

通用参数的值必须在两侧完全匹配(只要您不使用通配符).原因是Java Generics没有对立/协方差(Has??hMap< List>不是HashMap< ArrayList>的超类型,尽管List当然是ArrayList的超类型).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读