陣列什麼是下面的語句之間的區別:轉換泛型
List<E>[] x = (List<E>[]) new List[100];
和
List<E>[] x = new List[100];
在我的腳本它指出的是,前者是創建泛型數組的正確方法(儘管它會導致編譯器警告)。但我無法弄清楚(List<E>[])
聲明的用法。 List<E>[]
甚至不是它自己的類型,編譯器會簡單地(List[])
替換它,所以你會得到
List<E>[] x = (List[]) new List[100];
從List[]
到List[]
轉換,這是沒用的。那麼爲什麼要把(List<E>[])
放在第一位呢?
這是code java嗎? – 6502
小心提及語言。 – Malwaregeek
對不起,問題已編輯。不知道接口部分,我只是將它複製出我的腳本,所以我認爲它是有效的代碼。 – user2440792