logo

Wpisz Casting w Javie

na Jawie, odlewanie typu to metoda lub proces, który konwertuje typ danych na inny typ danych, ręcznie i automatycznie. Konwersja automatyczna wykonywana jest przez kompilator, a konwersja ręczna przez programistę. W tej części omówimy odlewanie typu I jego typy z odpowiednimi przykładami.

Wpisz Casting w Javie

Odlewanie typu

Konwersja wartości z jednego typu danych na inny typ danych jest tzw odlewanie typu .

Rodzaje odlewania typów

Istnieją dwa rodzaje rzutowania typu:

  • Odlew typu poszerzającego
  • Odlewanie typu zwężającego

Odlew typu poszerzającego

Nazywa się konwersją niższego typu danych na wyższy poszerzanie odlewanie typu. Znany jest również jako ukryta konwersja Lub rzucanie w dół . Odbywa się to automatycznie. Jest bezpieczny, bo nie ma szans na utratę danych. Ma to miejsce gdy:

  • Obydwa typy danych muszą być ze sobą kompatybilne.
  • Typ docelowy musi być większy niż typ źródłowy.
 byte -> short -> char -> int -> long -> float -> double 

Na przykład konwersja pomiędzy typem danych numerycznych na typ char lub Boolean nie jest wykonywana automatycznie. Ponadto typy danych char i Boolean nie są ze sobą kompatybilne. Zobaczmy przykład.

WideningTypeCastingExample.java

 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); } } 

Wyjście

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

W powyższym przykładzie wzięliśmy zmienną x i przekonwertowaliśmy ją na typ długi. Następnie typ długi jest konwertowany na typ zmiennoprzecinkowy.

Odlewanie typu zwężającego

Konwersja wyższego typu danych na niższy nazywa się zwężenie odlewanie typu. Znany jest również jako wyraźna konwersja Lub rzucanie się . Robi się to ręcznie przez programistę. Jeśli nie wykonamy rzutowania, kompilator zgłosi błąd w czasie kompilacji.

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

Zobaczmy przykład rzutowania typu zawężającego.

W poniższym przykładzie dwukrotnie wykonaliśmy odlewanie typu zwężającego. Najpierw przekonwertowaliśmy typ double na typ danych long, a następnie przekonwertowaliśmy typ danych long na typ int.

NarrowingTypeCastingExample.java

 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); } } 

Wyjście

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