泛型陣列建立錯誤:探索替代方案
嘗試在Java 中建立泛型類別的陣列(如問題所示) ,將會不可避免地會遇到錯誤。 Java 缺乏對此功能的支持,因此需要替代方法。
考慮使用集合
使用集合代替陣列可以有效解決此限制。例如,ArrayList 可以儲存物件列表,提供管理資料的靈活性。
另一個選項:輔助類
另一個可行的解決方案涉及建立輔助類班級。例如,名為 MyObjectArrayList 的類別可以擴充 ArrayList
理解禁令
Java 中對泛型數組的禁令深深植根於該語言的設計中。以下範例說明了證明此限制合理的潛在場景:
<code class="java">List<String>[] lsa = new List<String>[10]; // illegal Object[] oa = lsa; // OK because List<String> is a subtype of Object List<Integer> li = new ArrayList<Integer>(); li.add(new Integer(3)); oa[0] = li; String s = lsa[0].get(0);</code>
如果沒有此限制,此類程式碼可能會導致意外行為,例如將整數清單指派給用於字串的陣列。
以上是為什麼不能在 Java 中建立通用數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!