U ovom ćemo programu naučiti pretvoriti varijablu integer (int) u znak (char) u Javi.
Da biste razumjeli ovaj primjer, trebali biste imati znanje o sljedećim temama programiranja Java:
- Java tipovi podataka (primitivni)
- Osnovni ulaz i izlaz Java
Primjer 1: Java program za pretvaranje int u 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 ) )
U gornjem primjeru imamo intvarijable tipa num1 i num2. Primijetite crtu,
char a = (char)num1;
Ovdje koristimo typecasting za skrivanje intvarijable chartipa u varijablu tipa. Da biste saznali više, posjetite Java Typecasting.
Imajte na umu da se intvrijednosti tretiraju kao ASCII vrijednosti. Stoga, dobili P za intvrijednost 80 i Q za intvrijednost 81 . To je zato jer ASCII vrijednost P i Q su 80 i 81 respektivno.
Primjer 2: int u char pomoću forDigit ()
Također možemo koristiti forDigit()metodu Characterklase za pretvorbu intvarijable chartipa u tip.
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 ) )
Primijetite izraz,
char a = Character.forDigit(num1, 10);
Koristili smo forDigit()metodu koja pretvara navedenu intvrijednost u charvrijednost.
Ovdje su 10 i 16 vrijednosti radiksa za decimalni i heksadecimalni broj. Odnosno, ako je intvrijednost između 0 i 9 , koristimo 10 kao vrijednost radiksa, ako je intvrijednost između 0 i 15 , koristimo 16 itd.
Da biste saznali više o forDigit()metodi, posjetite Java Character.forDigit () (službena Oracle dokumentacija).
Primjer 3: int u char dodavanjem '0'
U Javi također možemo pretvoriti cijeli broj u znak dodavanjem znaka '0' uz njega. Na primjer,
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 ) )
U gornjem primjeru, primijetite redak,
char a = (char)(num1 + '0');
Ovdje se znak '0' pretvara u ASCII vrijednost 48 . Vrijednost 48 dodaje se vrijednosti num1 (tj. 1). Rezultat 49 je ASCII vrijednost 1 . Stoga kao izlaz dobivamo znak '1'.
Napomena : Ovo se odnosi samo na intvrijednosti od 0 do 9 .








