logo

Откуцајте Цастинг у Јави

у Јави, ливење типа је метод или процес који конвертује тип података у други тип података на оба начина ручно и аутоматски. Аутоматску конверзију врши компајлер, а ручну конверзију изводи програмер. У овом одељку ћемо разговарати ливење типа и његове врсте са правим примерима.

Откуцајте Цастинг у Јави

Тип ливење

Конвертовање вредности из једног типа података у други тип података је познато као ливење типа .

Врсте ливења типа

Постоје две врсте ливења:

  • Ширење типа Цастинг
  • Кастинг типа сужавања

Ширење типа Цастинг

Конвертовање нижег типа података у виши се зове проширење ливење типа. Такође је познато као имплицитна конверзија или бацање доле . Ради се аутоматски. Сигурно је јер нема шансе да изгубите податке. Одржава се када:

1 милион број
  • Оба типа података морају бити међусобно компатибилна.
  • Циљни тип мора бити већи од типа извора.
 byte -> short -> char -> int -> long -> float -> double 

На пример, конверзија између нумеричког типа података у цхар или Боолеан не врши се аутоматски. Такође, типови података цхар и Боолеан нису међусобно компатибилни. Хајде да видимо пример.

1 до 100 римски бр

ВиденингТипеЦастингЕкампле.јава

 public class WideningTypeCastingExample { public static void main(String[] args) { int x = 7; //automatically converts the integer type into long type long y = x; //automatically converts the long type into float type float z = y; System.out.println('Before conversion, int value '+x); System.out.println('After conversion, long value '+y); System.out.println('After conversion, float value '+z); } } 

Излаз

 Before conversion, the value is: 7 After conversion, the long value is: 7 After conversion, the float value is: 7.0 

У горњем примеру, узели смо променљиву к и претворили је у дуг тип. Након тога, дуги тип се претвара у тип флоат.

Кастинг типа сужавања

Конвертовање вишег типа података у нижи се зове сужавање ливење типа. Такође је познато као експлицитна конверзија или бацање горе . Програмер то ради ручно. Ако не извршимо кастинг онда компајлер пријављује грешку у времену компајлирања.

 double -> float -> long -> int -> char -> short -> byte 

Погледајмо пример ливења типа сужења.

У следећем примеру, два пута смо извршили ливење типа сужења. Прво, конвертовали смо тип доубле у дуг тип података након што се тај дуги тип података конвертује у тип инт.

НарровингТипеЦастингЕкампле.јава

јкуери клик
 public class NarrowingTypeCastingExample { public static void main(String args[]) { double d = 166.66; //converting double data type into long data type long l = (long)d; //converting long data type into int data type int i = (int)l; System.out.println('Before conversion: '+d); //fractional part lost System.out.println('After conversion into long type: '+l); //fractional part lost System.out.println('After conversion into int type: '+i); } } 

Излаз

 Before conversion: 166.66 After conversion into long type: 166 After conversion into int type: 166