List is a raw type. References to generic type List should be parameterized
阿新 • • 發佈:2018-12-15
編譯環境:Eclipse
問題:編譯集合型別List、Set、Map程式碼時,編譯器出現下面的警告:
List is a raw type. References to generic type List<E> should be parameterized Set is a raw type. References to generic type Set<E> should be parameterized Map is a raw type. References to generic type Map<K,V> should be parameterized
具體的問題程式碼:
List addressList;
public void setAddressList(List addressList) {
this.addressList=addressList;
}
public List getAddressList() {
System.out.println("List Elements :" + addressList);
return addressList;
}
警告的內容是,需要我們給出資料的原始型別,具體的修改方法如下:
List<String> addressList; public void setAddressList(List<String> addressList) { this.addressList=addressList; } public List<String> getAddressList() { System.out.println("List Elements :" + addressList); return addressList; }
問題下成功解決。
Set集合型別跟List集合型別一樣,具體說一下Map集合型別。
Map、HashMap集合型別問題總結:(因為這兩種集合型別都需要指出具體的key值和value值)
問題:
Map.Entry is a raw type. References to generic type Map<K,V>.Entry<K,V> should be parameterized
解決方法: HashMap<Object, Object> addressHash; HashMap<String, Long> addressHash; Map<String, Long> addressMap;