gram z zlokalizowana oraz tablic, wydaje następujący kod kompiluje grzywny,Array of Generic listy
ArrayList<Key> a = new ArrayList<Key>();
Ale kompilator narzeka na ten jeden,
ArrayList<Key>[] a = new ArrayList<Key>[10];
Czytając wpis w stackoverflow , Rozumiem, że jest to spowodowane typem Erasure i mogę to naprawić, używając,
ArrayList<Key>[] a = (ArrayList<Key> []) new ArrayList[10];
lub listy lista
ArrayList<ArrayList<Key>> b = new ArrayList<ArrayList<Key>>();
Ale nie mogę zrozumieć przyczyny tej sceny. Szczególnie, dlaczego drugi jest nielegalny, biorąc pod uwagę, że pierwszy jest całkowicie OK. I dlaczego kompilator nie narzeka na listę list.
http://stackoverflow.com/questions/217065/cannot-create-an-array-of-linkedlists-in-java – tcb