在Java中抛弃泛型

时间:2017-03-01 01:40:22

标签: java generics casting

我需要知道如何在Java中删除泛型。即解决这个错误:

Type mismatch: cannot convert from List<Map<String,Object>> to List<Map>

我在外部类中有一个方法将List<Map<String,Object>>返回给我,但是我必须将它传递给另一个只接受List<Map>的类中的另一个方法。我不能改变这2个外部类中的任何一个,所以改变签名是不可能的,我也不能这样做我能做什么才能把它丢掉?我正在使用Java 6,因此Java 7中引入的“diamond”运算符对我来说不起作用。

1 个答案:

答案 0 :(得分:2)

我想通了,对于那些面临同样问题的人来说,解决办法是做一个演员,但必须如下:

(List<Map>)(List<?>)