logo

Skriv Casting i Java

I Java, typ gjutning är en metod eller process som omvandlar en datatyp till en annan datatyp på båda sätt manuellt och automatiskt. Den automatiska konverteringen görs av kompilatorn och manuell konvertering utförs av programmeraren. I det här avsnittet kommer vi att diskutera typ gjutning och dess typer med ordentliga exempel.

Skriv Casting i Java

Typ gjutning

Konvertera ett värde från en datatyp till en annan datatyp kallas typ gjutning .

Typer av typgjutning

Det finns två typer av gjutning:

  • Breddning Typ Gjutning
  • Avsmalnande typ gjutning

Breddning Typ Gjutning

Att konvertera en lägre datatyp till en högre kallas vidgning typ gjutning. Det är också känt som implicit konvertering eller kasta ner . Det görs automatiskt. Det är säkert eftersom det inte finns någon chans att förlora data. Det sker när:

  • Båda datatyperna måste vara kompatibla med varandra.
  • Måltypen måste vara större än källtypen.
 byte -> short -> char -> int -> long -> float -> double 

Omvandlingen mellan numerisk datatyp till char eller Boolean görs till exempel inte automatiskt. Dessutom är datatyperna char och booleska inte kompatibla med varandra. Låt oss se ett exempel.

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

Produktion

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

I exemplet ovan har vi tagit en variabel x och omvandlat den till en lång typ. Därefter omvandlas den långa typen till flyttypen.

Avsmalnande typ gjutning

Att konvertera en högre datatyp till en lägre kallas inskränkande typ gjutning. Det är också känt som explicit konvertering eller kasta upp . Det görs manuellt av programmeraren. Om vi ​​inte utför casting rapporterar kompilatorn ett kompileringsfel.

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

Låt oss se ett exempel på avsmalnande typ av gjutning.

I följande exempel har vi utfört den avsmalnande typen av gjutning två gånger. Först har vi konverterat dubbeltypen till lång datatyp efter att den långa datatypen har konverterats till int-typ.

NarrowingTypeCastingExample.java

java-tecken till int
 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); } } 

Produktion

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