Rumah  >  Artikel  >  Java  >  Mengapakah Penukaran Int kepada Char di Java Mengembalikan Output Kosong?

Mengapakah Penukaran Int kepada Char di Java Mengembalikan Output Kosong?

Linda Hamilton
Linda Hamiltonasal
2024-11-10 13:18:03638semak imbas

Why Does Converting an Int to a Char in Java Return an Empty Output?

Menyelidiki Penukaran Aksara: Int to Char dalam Java

Apabila memanipulasi data dalam Java, senario sering timbul di mana penukaran antara jenis data primitif menjadi perlu. Satu senario sedemikian melibatkan penukaran integer (int) kepada aksara (char). Walaupun penukaran ini kelihatan mudah, ia boleh membawa kepada hasil yang tidak dijangka jika tidak didekati dengan teliti.

Pertimbangkan coretan kod Java berikut:

int a = 1;
char b = (char) a;
System.out.println(b);

Jika anda melaksanakan kod ini, anda mungkin terkejut untuk mencari output kosong dan bukannya aksara yang dijangkakan '1'. Untuk memahami sebab ini berlaku, adalah penting untuk menyelidiki cara dalaman penukaran ini.

Apabila menghantar int ke aksara, Java menganggap int sebagai titik kod Unicode. Dalam contoh di atas, int 1 mempunyai titik kod Unicode 1, yang sepadan dengan watak kawalan "permulaan-tajuk". Aksara ini tidak boleh dicetak dan oleh itu menghasilkan output kosong.

Untuk menyelesaikan isu ini dan mendapatkan aksara yang diharapkan '1', anda perlu menganggap int sebagai nilai angka dan bukannya titik kod. Begini cara anda boleh mencapainya:

int a = '1';
char b = (char) a;
System.out.println(b);

Dalam coretan ini, dengan menyertakan '1' dalam petikan tunggal, anda menyatakannya sebagai aksara. Nilai aksara ini ialah 49, titik kod Unicode untuk '1'. Menghantar aksara ini kepada aksara dengan betul menghasilkan output yang diingini.

Selain itu, anda juga boleh menggunakan kaedah berikut untuk menukar int kepada aksara:

  • Integer.valueOf(int) .charValue(): Mengembalikan perwakilan char bagi int.
  • Character.forDigit(int, int radix): Menukar int kepada char yang mewakili digit yang sepadan dengan radix yang ditentukan (cth., 10 untuk perpuluhan).
  • Character.toChars(int codePoint): Mengembalikan tatasusunan aksara yang mewakili titik kod Unikod bagi int.

Dengan memahami teknik ini, anda boleh menukar antara int dan char dengan berkesan di Java, memastikan penukaran yang tepat dan mengelakkan hasil yang tidak dijangka.

Atas ialah kandungan terperinci Mengapakah Penukaran Int kepada Char di Java Mengembalikan Output Kosong?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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