У овом програму научићемо да конвертујемо целобројну (инт) променљиву у знак (цхар) у Јави.
Да бисте разумели овај пример, требало би да имате знање о следећим темама програмирања Јава:
- Јава типови података (примитивни)
- Јава основни улаз и излаз
Пример 1: Јава програм за претварање инт у цхар
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 ) )
У горњем примеру имамо int
променљиве типа нум1 и нум2. Обратите пажњу на линију,
char a = (char)num1;
Овде користимо типизацију за скривање int
променљиве char
типа у променљиву типа. Да бисте сазнали више, посетите Јава Типецастинг.
Имајте на уму да се int
вредности третирају као АСЦИИ вредности. Дакле, добијамо П за int
вредност 80 и К за int
вредност 81 . То је зато што је АСЦИИ вредност од П и К су 80 и 81 , респективно.
Пример 2: инт то цхар помоћу форДигит ()
Такође можемо користити forDigit()
метод Character
класе за претварање 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 ) )
Примети израз,
char a = Character.forDigit(num1, 10);
Користили смо forDigit()
методу која претвара наведену int
вредност у char
вредност.
Овде су 10 и 16 вредности радикса за децимални и хексадецимални број. Односно, ако је int
вредност између 0 и 9 , користимо 10 као вредност радикса, ако је int
вредност између 0 и 15 , користимо 16 итд.
Да бисте сазнали више о forDigit()
методи, посетите Јава Цхарацтер.форДигит () (званична Орацле документација).
Пример 3: инт у цхар додавањем '0'
У Јави такође можемо претворити цео број у знак додавањем знака '0' уз њега. На пример,
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 ) )
У горњем примеру, обратите пажњу на ред,
char a = (char)(num1 + '0');
Овде се знак '0' претвара у АСЦИИ вредност 48 . Вредност 48 се додаје вредности нум1 (тј. 1). Резултат 49 је АСЦИИ вредност 1 . Дакле, као излаз добијамо знак '1'.
Напомена : Ово се односи само на int
вредности од 0 до 9 .