我的课程如下,并且工作正常,但NetBeans在第18行显示以下警告,我想知道这是为了什么?
代码
public class Users {
private List<Long> grades;
...
public String retrieveAllGrades(){
Line 18 this.grades = new ArrayList();
...
}
getters and setters
}
第18行警告
Found raw type: ArrayList
missing type arguments for generic class ArrayList<E> where E is a type-variable: E extends Object declared in class ArrayList
[unchecked] unchecked conversion
required: List<Long>
found: ArrayList
答案 0 :(得分:2)
你需要这样做:
this.grades = new ArrayList<Long>();
这是因为您将成绩定义为List<Long>()
,但初始化为ArrayList()
(您需要较长的部分)
答案 1 :(得分:0)
对于较新的JDK版本(使用Java 7及更高版本测试),您无需隐式声明类型(在本例中为“Long”)。 你可以这样做:
this.grades = new ArrayList<>();