我有一个返回List的方法。当我使用像
这样的东西时List aList = myObj.getList("1");
它说Raw类型。应该对泛型类型的引用进行参数化。
当我使用
时List<String> aList = myObj.getList("1");
它表示将强制转换添加到列表或更改为列表
我不确定为什么?请建议。
PS:我直接创建了一个列表。没有先前的
List aList = new ArrayList();
答案 0 :(得分:2)
几乎可以肯定,您已将getList
的返回类型声明为原始类型List
而非List< String >
。即使getList
的主体使用显式类型的泛型列表,返回类型声明也会确定编译器键入表达式的方式,该表达式涉及对该方法的调用。