У цьому підручнику ми дізнаємося про лиття типів Java та його типи за допомогою прикладів.
Перш ніж дізнатися про Java Type Casting , переконайтеся, що знаєте про типи даних Java.
Тип лиття
Процес перетворення значення одного типу даних ( int
, float
, double
, і т.д.) до іншого типу даних відомий як типажі.
У Java існує 13 типів перетворення типів. Однак у цьому посібнику ми зупинимось лише на основних 2 типах.
1. Розливання типу лиття
2. Звуження типу лиття
Щоб дізнатися про інші типи перетворення типів, відвідайте перетворення типів Java (офіційна документація Java).
Розливання типу лиття
Під час розширення типу лиття Java автоматично перетворює один тип даних на інший тип даних.
Приклад: Перетворення int у double
class Main ( public static void main(String() args) ( // create int type variable int num = 10; System.out.println("The integer value: " + num); // convert into double type double data = num; System.out.println("The double value: " + data); ) )
Вихідні дані
Ціле значення: 10 Подвійне значення: 10,0
У наведеному вище прикладі ми призначаємо int
змінну типу з назвою num double
змінній типу з іменем data.
Тут Java спочатку перетворює int
дані типу у double
тип. А потім призначте його double
змінній.
У разі розливання типу розширення нижчий тип даних (із меншим розміром) перетворюється на вищий тип даних (із більшим розміром). Отже, немає втрат даних. Ось чому цей тип перетворення відбувається автоматично.
Примітка : Це також відоме як неявний тип лиття .
Звуження типу лиття
У режимі звуження типів лиття ми вручну перетворюємо один тип даних в інший за допомогою дужок.
Приклад: Перетворення double в int
class Main ( public static void main(String() args) ( // create double type variable double num = 10.99; System.out.println("The double value: " + num); // convert into int type int data = (int)num; System.out.println("The integer value: " + data); ) )
Вихідні дані
Подвійне значення: 10,99 Ціле значення: 10
У наведеному вище прикладі ми призначаємо double
змінну типу з назвою num int
змінній типу з іменем data.
Зверніть увагу на рядок,
int data = (int)num;
Тут int
ключове слово всередині дужок вказує на те, що змінна num перетворюється у int
тип.
У разі звуження типу вузьких типів вищі типи даних (що мають більший розмір) перетворюються на нижчі типи даних (що мають менший розмір). Отже, відбувається втрата даних. Ось чому цей тип перетворення не відбувається автоматично.
Примітка . Це також відомо як явне лиття типів .
Давайте розглянемо деякі приклади перетворення інших типів у Java.
Приклад 1: Перетворення типу з int на String
class Main ( public static void main(String() args) ( // create int type variable int num = 10; System.out.println("The integer value is: " + num); // converts int to string type String data = String.valueOf(num); System.out.println("The string value is: " + data); ) )
Вихідні дані
Ціле значення: 10 Значення рядка: 10
У наведеній вище програмі зверніть увагу на рядок
String data = String.valueOf(num);
Тут ми використали valueOf()
метод класу Java String для перетворення змінної типу int у рядок.
Приклад 2: Перетворення типу зі рядка на внутрішній
class Main ( public static void main(String() args) ( // create string type variable String data = "10"; System.out.println("The string value is: " + data); // convert string variable to int int num = Integer.parseInt(data); System.out.println("The integer value is: " + num); ) )
Вихідні дані
Значення рядка: 10 Ціле значення: 10
У наведеному вище прикладі зверніть увагу на рядок
int num = Integer.parseInt(data);
Тут ми використали parseInt()
метод Integer
класу Java для перетворення змінної типу рядка у int
змінну.
Примітка : Якщо змінну рядка неможливо перетворити на цілу змінну, виникає виняток з іменем NumberFormatException
.