I dette program lærer vi at konvertere heltal (int) -variablen til et tegn (char) i Java.
For at forstå dette eksempel skal du have kendskab til følgende Java-programmeringsemner:
- Java-datatyper (primitive)
- Java Basic Input og Output
Eksempel 1: Java-program til konvertering af int til char
class Main ( public static void main(String() args) ( // create int variables int num1 = 80; int num2 = 81; // convert int to char // typecasting char a = (char)num1; char b = (char)num2; // print value System.out.println(a); // P System.out.println(b); // Q ) )
I ovenstående eksempel har vi int
typevariabler num1 og num2. Bemærk linjen,
char a = (char)num1;
Her bruger vi typecasting at skjult en int
type, variabel ind i char
typen variabel. For at lære mere, besøg Java Typecasting.
Bemærk, at int
værdierne behandles som ASCII-værdier. Derfor får vi P for int
værdi 80 og Q for int
værdi 81 . Det er fordi ASCII-værdien af P og Q er henholdsvis 80 og 81 .
Eksempel 2: int til char ved hjælp af forDigit ()
Vi kan også bruge forDigit()
metoden i Character
klassen til at konvertere int
typevariablen til char
type.
class Main ( public static void main(String() args) ( // create int variables int num1 = 1; int num2 = 13; // convert int to char // for value between 0-9 char a = Character.forDigit(num1, 10); // for value between 0-9 char b = Character.forDigit(num2, 16); // print value System.out.println(a); // 1 System.out.println(b); // d ) )
Bemærk udtrykket,
char a = Character.forDigit(num1, 10);
Vi har brugt forDigit()
metoden konverterer den angivne int
værdi til char
værdi.
Her er 10 og 16 radixværdier for henholdsvis decimal og hexadecimaltal. Hvis int
værdien er mellem 0 og 9 , bruger vi 10 som radixværdi, hvis int
værdien er mellem 0 og 15 , bruger vi 16 osv.
For at lære mere om forDigit()
metoden, besøg Java Character.forDigit () (officiel Oracle-dokumentation).
Eksempel 3: int til char ved at tilføje '0'
I Java kan vi også konvertere heltal til et tegn ved at tilføje tegnet '0' med det. For eksempel,
class Main ( public static void main(String() args) ( // create int variables int num1 = 1; int num2 = 9; // convert int to char char a = (char)(num1 + '0'); char b = (char)(num2 + '0'); // print value System.out.println(a); // 1 System.out.println(b); // 9 ) )
I ovenstående eksempel bemærk linjen,
char a = (char)(num1 + '0');
Her konverteres tegnet '0' til ASCII-værdi 48 . Værdien 48 føjes til værdien num1 (dvs. 1). Resultatet 49 er ASCII-værdien på 1 . Derfor får vi tegnet '1' som output.
Bemærk : Dette gælder kun for int
værdi 0 til 9 .