使用场景
最近在项目中需要写一个多sheet导出的工具类,用到了泛型的嵌套,在这里分享一下,下面上干货。(有需要多sheet导出工具类代码的可以看我另一篇博客:https://blog.csdn.net/M_memory/article/details/95318378)
如何实现Map中key为泛型,value为泛型集合
起初我是想通过Map<?,List<?>>这种形式实现,后面发现在调用方法传参时一直报错,后面又尝试了T E都不行,最后发现只有Map<?,?>这种形式是可行的,只要在遍历value时对其进行一次强转即可,下面是demo。
public static void main(String[] args) {
Map<String,List<String>> dataMap = Maps.newHashMap();
setMap(dataMap);
}
public static void setMap(Map<?,?> dataMap){
Set<?> dateSet = dataMap.keySet();
for (Object obj : dateSet) {
List<?> dataList = (List<?>) dataMap.get(obj);
}
}