我知道這個問題已經被提出,但我從另一個角度看待它。 對generic type for ArrayList of ArrayLists是什麼提供了答案。但是,我正在尋找最佳實踐並進行接口編程。然後我提出了以下三個選項。如何創建ArrayList的ArrayList,使其適合程序接口原理
問題:
爲什麼選項1是編譯錯誤?爲什麼轉換不能發生?
選項2或3中的哪一個是首選的?
在選項3爲什麼接口「List」出現在語句的右側?請爲此提供適當的答案。我需要了解這些嵌套的泛型定義。
1) List<List<Integer>> arList1 = new ArrayList<ArrayList<Integer>>(); 2) List<ArrayList<Integer>> arList2 = new ArrayList<ArrayList<Integer>>(); 3) List<List<Integer>> arList3 = new ArrayList<List<Integer>>();