Menambah Aksara Java: Int atau Char Outcome?
Apabila menambah dua aksara ('a' 'b') dalam Java, ia mungkin nampaknya mengejutkan bahawa hasilnya adalah int (195). Ini disebabkan oleh peraturan promosi angka binari Java.
Promosi Angka Perduaan
Menurut Spesifikasi Bahasa Java, apabila menambahkan aksara Java, pendek atau bait, hasilnya dinaikkan pangkat kepada int. Ini direka bentuk untuk mengelakkan sebarang kehilangan ketepatan apabila bekerja dengan jenis data yang lebih kecil.
Kes Khas: Tugasan Kompaun
Walau bagaimanapun, terdapat pengecualian untuk pengendali tugasan kompaun seperti =. Dalam kes ini, hasil operasi ditukar kepada jenis pembolehubah sebelah kiri.
Menentukan Jenis Hasil
Satu cara untuk menentukan jenis hasilnya ialah menghantarnya ke Object dan semak kelasnya:
System.out.println(((Object)('a' + 'b')).getClass()); // Outputs: class java.lang.Integer
Char Penggabungan
Jika anda berhasrat untuk menggabungkan aksara sebagai String dan bukannya int, terdapat pelbagai cara untuk melakukannya:
'a' + "" + 'b'
"" + 'a' + 'b'
new StringBuilder().append('a').append('b').toString() String.format("%c%c", 'a', 'b')
Atas ialah kandungan terperinci Mengapa Menambah Dua Aksara Java Menghasilkan Integer?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!