我遇到了一个复杂的泛型问题:支持两个集合引用a和b,其定义如下:
List<Map<String, Object>> A = new ArrayList<>();
List<Map> B = new ArrayList<>();
接下来,将b的所有项放入a中,但是如果没有使用javac进行force类型转换,就无法直接工作。
A.addAll((C)B);
那么,在这种情况下,c应该是什么,它与javac兼容。
(我在公司维护旧项目的旧代码,我不知道作者为什么这样编码[眼泪])
我遇到了一个复杂的泛型问题:支持两个集合引用a和b,其定义如下:
List<Map<String, Object>> A = new ArrayList<>();
List<Map> B = new ArrayList<>();
接下来,将b的所有项放入a中,但是如果没有使用javac进行force类型转换,就无法直接工作。
A.addAll((C)B);
那么,在这种情况下,c应该是什么,它与javac兼容。
(我在公司维护旧项目的旧代码,我不知道作者为什么这样编码[眼泪])
1条答案
按热度按时间xkftehaa1#
你可以用
List<Map<String, Object>>
投。额外演员
Object
需要向编译器解释谁是这里的老板。