0
今天,我遇到了Java 7泛型數組創建的奇怪情況。請看下面的兩條語句。通過鑽石算子創建通用數組
Map<String, String>[] hashArr= new HashMap[2]; // Compiles
Map<String, String>[] hashArr= new HashMap<>[2];// Does not compile
這裏首先聲明編譯沒有鑽石運營商,如果我把鑽石運營商或通用型的右側比它不會編譯。我面臨所有類型的相同情況,List<T>
,Set<T>
誰能告訴我,什麼是不編譯第二條語句的原因?
@Downvoter,請發表評論,這是什麼問題的錯誤? – Masudul
因爲你不能創建一個'HashMap'類型的泛型數組。 –
@ElliottFrisch,我可以用第一個語句創建數組。 – Masudul