当由于擦除而在运行时无法获得类型信息时,java编译器如何知道为泛型集合中的对象提供适当的强制转换?
答案 0 :(得分:1)
每当你打电话时, list.get(foo)
,列表为ArrayList<String>
,然后调用者将get
的结果投放到String
,而不是被调用者。调用者在编译时知道应该将结果转换为什么(String
),因此可以在那里插入强制转换。
答案 1 :(得分:0)
根据oracle tutorial
因此,您的类文件包含有界类(或)Object而不是泛型类型。