V tem programu se bomo naučili pretvoriti spremenljivko integer (int) v znak (char) v Javi.
Če želite razumeti ta primer, morate poznati naslednje programske teme Java:
- Vrste podatkov Java (primitivne)
- Osnovni vhod in izhod Java
Primer 1: Program Java za pretvorbo int v 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 ) )
V zgornjem primeru imamo int
spremenljivki tipa num1 in num2. Opazite vrstico,
char a = (char)num1;
Tu uporabljamo tipiziranje za prikrivanje int
spremenljivke char
tipa v spremenljivko tipa. Če želite izvedeti več, obiščite Java Typecasting.
Upoštevajte, da so int
vrednosti obravnavane kot vrednosti ASCII. Zato dobimo P za int
vrednost 80 in Q za int
vrednost 81 . To je zato, ker ASCII vrednost P in Q sta 80 in 81 oz.
Primer 2: int do char z uporabo forDigit ()
Za pretvorbo spremenljivke tipa v tip lahko uporabimo tudi forDigit()
metodo Character
razreda .int
char
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 ) )
Upoštevajte izraz,
char a = Character.forDigit(num1, 10);
Uporabili smo forDigit()
metodo, ki pretvori določeno int
vrednost v char
vrednost.
Tu sta 10 in 16 vrednosti radixa za decimalna in šestnajstiška števila. To pomeni, da če je int
vrednost med 0 in 9 , uporabimo 10 kot vrednost radiksa, če je int
vrednost med 0 in 15 , uporabimo 16 itd.
Če želite izvedeti več o forDigit()
metodi, obiščite Java Character.forDigit () (Uradna dokumentacija Oracle).
Primer 3: int v char z dodajanjem '0'
V Javi lahko celo število pretvorimo v znak, tako da mu dodamo znak '0' . Na primer
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 ) )
V zgornjem primeru upoštevajte vrstico,
char a = (char)(num1 + '0');
Tu se znak '0' pretvori v ASCII vrednost 48 . Vrednost 48 se doda vrednosti num1 (tj. 1). Rezultat 49 je vrednost ASCII 1 . Tako dobimo znak '1' kot izhod.
Opomba : To velja samo za int
vrednosti od 0 do 9 .