首頁 > Java > java教程 > 主體

如何在 Java 中建立 LinkedList 陣列:克服類型擦除?

Linda Hamilton
發布: 2024-10-28 02:43:02
原創
844 人瀏覽過

 How to Create an Array of LinkedLists in Java: Overcoming Type Erasure?

Java 中的LinkedList 陣列:建立和陷阱

嘗試在Java 中建立LinkedList 陣列時,開發人員可能會遇到錯誤,

嘗試在Java 中建立LinkedList 陣列時,開發人員可能會遇到錯誤,指出不允許使用LinkedList 的通用陣列。出現此問題的原因是語言的類型擦除,解決方案涉及在創建過程中轉換數組類型。

在提供的程式碼中,將陣列 myMatrix 宣告為 private LinkedList[] 是有效的,如下所示Java 允許在宣告中使用泛型類型。然而,在實例化過程中,編譯器意識到它無法建立特定類別的陣列(此處為 LinkedList)。

要解決此問題,程式碼必須在建立過程中將陣列類型強制轉換為泛型類型。正確的語法是:
<code class="java">myMatrix = (LinkedList<IntegerNode>[]) new LinkedList<?>[numRows];</code>
登入後複製

透過轉換為泛型類型(在本例中為 LinkedList>),編譯器被告知該陣列可以保存任何類型的 LinkedList。這使得實例化能夠成功完成。

值得注意的是,Java 中的類型擦除意味著儲存在陣列中的特定類型的物件在執行時遺失。這意味著數組可以保存不同類型的 LinkedList,但它不會有類型資訊來區分它們。

以上是如何在 Java 中建立 LinkedList 陣列:克服類型擦除?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!