Rumah > Java > javaTutorial > Mengapa Java Melemparkan 'Jenis tidak serasi: void tidak boleh ditukar kepada ...' Ralat Penyusunan?

Mengapa Java Melemparkan 'Jenis tidak serasi: void tidak boleh ditukar kepada ...' Ralat Penyusunan?

Linda Hamilton
Lepaskan: 2024-12-29 13:03:15
asal
983 orang telah melayarinya

Why Does Java Throw an

Apakah maksud "Jenis tidak serasi: lompang tidak boleh ditukar kepada ..."?

Masalah:

Bila menyusun kod Java, pengaturcara mungkin menghadapi ralat penyusunan seperti sebagai:

  • "Jenis tidak serasi: void tidak boleh ditukar kepada ..."
  • "Type mismatch: cannot convert from void to ..."
  • " Jenis tidak serasi Diperlukan: ... dijumpai: batal"
  • "Jenis tidak serasi: Ditemui tidak sah, diperlukan ..."

Maksud:

Mesej ralat ini menunjukkan ketidakpadanan jenis dalam kod, khususnya yang melibatkan jenis "kosong". Void bukan jenis primitif atau rujukan di Jawa. Ia mewakili kaedah yang tidak mengembalikan nilai.

Betulkan:

Untuk menyelesaikan ralat ini, tentukan penggunaan kaedah yang dimaksudkan:

  1. Semak dokumentasi kaedah (Javadocs): Semak dokumentasi untuk kaedah yang dipanggil untuk memahami pemulangannya taip.
  2. Penggunaan kod yang betul: Laraskan panggilan kaedah untuk sama ada menggunakan hasil (jika nilai pulangan dijangka) atau alih keluar percubaan untuk menetapkan keputusan.
  3. Ubah suai tandatangan kaedah (Pilihan): Jika kaedah bertujuan untuk mengembalikan nilai, ubah suai tandatangannya untuk menggambarkan pulangan yang betul taip.

Contoh:

Pertimbangkan kod berikut:

public class Test {
    private static void add(int a, int b) {
        int res = a + b;
    }

    public static void main(String[] args) {
        int sum = add(1, 1);
    }
}
Salin selepas log masuk

Kod ini menjana ralat "jenis tidak serasi: void tidak boleh ditukar kepada int" kerana kaedah tambah tidak mengembalikan nilai, tetapi kod cuba untuk memberikan hasil kepada pembolehubah. Untuk membetulkan ralat, sama ada ubah suai tandatangan kaedah untuk mengembalikan int atau alih keluar pernyataan tugasan.

Atas ialah kandungan terperinci Mengapa Java Melemparkan 'Jenis tidak serasi: void tidak boleh ditukar kepada ...' Ralat Penyusunan?. 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