V tomto programe sa naučíme prevádzať celočíselnú (int) premennú na znak (char) v Jave.
Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich tém programovania v jazyku Java:
- Dátové typy Java (primitívne)
- Java Basic Input and Output
Príklad 1: Program Java na prevod int na 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 ) )
Vo vyššie uvedenom príklade máme int
typové premenné num1 a num2. Všimnite si riadok,
char a = (char)num1;
Tu používame obsadenie typu na skrytie int
premennej char
typu na premennú typu. Ak sa chcete dozvedieť viac, navštívte Java Typecasting.
Upozorňujeme, že s int
hodnotami sa zaobchádza ako s hodnotami ASCII. Preto dostaneme P pre int
hodnotu 80 a Q pre int
hodnotu 81 . Je to preto, že ASCII hodnota P a Q sú 80 a 81 v tomto poradí.
Príklad 2: int na char pomocou forDigit ()
Môžeme tiež použiť forDigit()
metódu Character
triedy na prevedenie int
premennej char
typu na typ.
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 ) )
Všimnite si výraz,
char a = Character.forDigit(num1, 10);
Použili sme forDigit()
metódu, ktorá prevádza zadanú int
hodnotu na char
hodnotu.
Tu sú 10 a 16 hodnoty radixu pre desatinné čísla a šestnástkové čísla. To znamená, že ak je int
hodnota medzi 0 až 9 , použijeme 10 ako radixovú hodnotu, ak je int
hodnota medzi 0 až 15 , použijeme 16 atď.
Ak sa chcete o tejto forDigit()
metóde dozvedieť viac , navštívte stránku Java Character.forDigit () (oficiálna dokumentácia Oracle).
Príklad 3: int na char pridaním '0'
V Jave tiež môžeme celé číslo previesť na znak pridaním znaku „0“ . Napríklad,
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 ) )
Vo vyššie uvedenom príklade si všimnite riadok,
char a = (char)(num1 + '0');
Tu sa znak „0“ prevedie na ASCII hodnotu 48 . Hodnota 48 sa pripočíta k hodnote num1 (tj. 1). Výsledok 49 je hodnota ASCII 1 . Preto dostaneme ako výstup znak „1“.
Poznámka : Toto platí iba pre int
hodnoty 0 až 9 .