I Java, type støbning er en metode eller proces, der konverterer en datatype til en anden datatype på begge måder manuelt og automatisk. Den automatiske konvertering udføres af compileren og manuel konvertering udføres af programmøren. I dette afsnit vil vi diskutere type støbning og dens typer med rigtige eksempler.
Type støbning
Konverter en værdi fra én datatype til en anden datatype kaldes type støbning .
Typer af Typestøbning
Der er to typer støbning:
- Udvidelsestype Støbning
- Indsnævrende Type Støbning
Udvidelsestype Støbning
Konvertering af en lavere datatype til en højere kaldes udvidelse type støbning. Det er også kendt som implicit konvertering eller nedkastning . Det sker automatisk. Det er sikkert, fordi der ikke er nogen chance for at miste data. Det finder sted, når:
- Begge datatyper skal være kompatible med hinanden.
- Måltypen skal være større end kildetypen.
byte -> short -> char -> int -> long -> float -> double
For eksempel sker konverteringen mellem numerisk datatype til char eller Boolean ikke automatisk. Desuden er char og boolske datatyper ikke kompatible med hinanden. Lad os se et eksempel.
WideningTypeCastingExample.java
s i python
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 ovenstående eksempel har vi taget en variabel x og konverteret den til en lang type. Derefter omdannes den lange type til flydetypen.
Indsnævrende Type Støbning
Konvertering af en højere datatype til en lavere kaldes indsnævring type støbning. Det er også kendt som eksplicit konvertering eller kaste op . Det gøres manuelt af programmøren. Hvis vi ikke udfører casting, rapporterer compileren en kompileringsfejl.
metoder i java
double -> float -> long -> int -> char -> short -> byte
Lad os se et eksempel på indsnævrende støbning.
I det følgende eksempel har vi udført den indsnævre type støbning to gange. For det første har vi konverteret den dobbelte type til lang datatype, efter at den lange datatype er konverteret til int type.
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); } }
Produktion
Before conversion: 166.66 After conversion into long type: 166 After conversion into int type: 166