Rumah > Java > javaTutorial > teks badan

Mengapa Saya Tidak Boleh Mencipta Susunan Senarai Terpaut di Java dan Bagaimana Saya Membetulkannya?

Susan Sarandon
Lepaskan: 2024-10-27 07:31:29
asal
929 orang telah melayarinya

Why Can't I Create an Array of LinkedLists in Java and How Do I Fix It?

Membuat Array LinkedLists di Java

Di Java, persoalan timbul apabila cuba mencipta tatasusunan LinkedLists. Apabila mengisytiharkan tatasusunan seperti LinkedList[] myMatrix peribadi, tatasusunan dijangka boleh diperuntukkan dengan baris berikut: myMatrix = LinkedList baharu[numRows]. Walau bagaimanapun, strategi ini menghasilkan ralat yang menyatakan bahawa tatasusunan generik LinkedList tidak boleh dibuat.

Ini menimbulkan dua isu:

  1. Apakah ralat yang menyebabkan keadaan ini?
  2. Mengapa jenis LinkedList dibenarkan dalam pengisytiharan tatasusunan jika ia tidak boleh dibuat?

Adalah penting untuk ambil perhatian bahawa IntegerNode ialah kelas yang ditentukan pengguna dalam senario ini.

Resolusi

Penyelesaian kepada isu ini ialah menghantar jenis dalam pengisytiharan untuk membenarkan penciptaan tatasusunan. Pengisytiharan yang disemak hendaklah:

myMatrix = (LinkedList<IntegerNode>[]) new LinkedList<?>[numRows];
Salin selepas log masuk

Penjelasan

Dalam Java, tatasusunan generik tidak disokong secara langsung. Sebaliknya, jenis mentah (iaitu, jenis tanpa parameter jenis) digunakan. Menghantar jenis membolehkan pengkompil membuat kesimpulan jenis generik yang betul untuk tatasusunan.

Jadi, jenis LinkedList[] dalam pengisytiharan dibenarkan, walaupun ia tidak boleh dibuat secara langsung. Ini kerana pengkompil menganggapnya sebagai jenis mentah, menyerahkannya kepada pengaturcara untuk menghantarnya kepada jenis generik tertentu yang diperlukan.

Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Mencipta Susunan Senarai Terpaut di Java dan Bagaimana Saya Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!