我無法理解爲什麼我的接口參數化不起作用。讓我們來看看下面的代碼:Java:原始類型對象內的泛型類型或爲什麼我的參數化不起作用
public interface IType {
public List<String> getAllItems();
}
......
public void function(IType item) {
for (String str : item.getAllItems()) { //DOESN'T WORK! Incompoatible types. Required String, Found: Object
}
}
爲什麼它返回List<Object>
代替List<String>
?
泛型是編譯時。在運行時,它不像您想象的那樣運行。將其轉換爲'String'。 –
是的,我可以施放列表引用。但實際上問題是爲什麼? –
所以'列表 foo = item.getAllItems();'不起作用??? –