I den här handledningen lär vi oss om Java Type Casting och dess typer med hjälp av exempel.
Innan du lär dig om Java Type Casting , se till att du känner till Java-datatyper.
Typ gjutning
Ett sätt att omvandla värdet av en datatyp ( int
, float
, double
, etc.) till en annan datatyp kallas type-casting.
I Java finns det 13 typer av typkonvertering. I denna handledning kommer vi dock bara att fokusera på de viktigaste två typerna.
1. Gjutning av bredare typ
2. Gjutning av smalare typ
För att lära dig om andra typer av typkonvertering, besök Java Type Conversion (officiell Java-dokumentation).
Gjutning av bredare typ
I vidgningstypgjutning konverterar Java automatiskt en datatyp till en annan datatyp.
Exempel: Konvertera int till dubbel
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); ) )
Produktion
Heltalsvärdet: 10 Dubbelvärdet: 10,0
I exemplet ovan tilldelar vi typvariabeln int
num med num till en double
typvariabel med namnet data.
Här konverterar Java först typdata int
till double
typen. Och tilldela den sedan till double
variabeln.
I fallet med bredare typgjutning konverteras den lägre datatypen (med mindre storlek) till den högre datatypen (med större storlek). Därför finns det ingen förlust i data. Det är därför som denna typ av konvertering sker automatiskt.
Obs : Detta är också känt som Implicit Type Casting .
Gjutning av smalare typ
I gjutning av smal typ konverterar vi manuellt en datatyp till en annan med parentesen.
Exempel: Konvertera dubbelt till ett 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); ) )
Produktion
Det dubbla värdet: 10,99 Heltalet: 10
I exemplet ovan tilldelar vi typvariabeln double
som heter num till en int
typvariabel med namnet data.
Lägg märke till raden,
int data = (int)num;
Här int
anger nyckelordet inom parentesen att variabeln num omvandlas till int
typen.
När det gäller smalning av gjutning konverteras de högre datatyperna (med större storlek) till lägre datatyper (med mindre storlek). Därför finns det förlust av data. Det är därför denna typ av konvertering inte sker automatiskt.
Obs : Detta är också känt som Explicit Type Casting .
Låt oss se några av exemplen på andra typkonverteringar i Java.
Exempel 1: Skriv konvertering från int till 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); ) )
Produktion
Heltalsvärdet är: 10 Strängvärdet är: 10
Lägg märke till raden i programmet ovan
String data = String.valueOf(num);
Här har vi använt valueOf()
metoden för Java String-klassen för att konvertera variabeln int-typ till en sträng.
Exempel 2: Skriv konvertering från sträng till int
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); ) )
Produktion
Strängvärdet är: 10 Heltalets värde är: 10
Lägg märke till raden i exemplet ovan
int num = Integer.parseInt(data);
Här har vi använt parseInt()
metoden i Java- Integer
klassen för att konvertera en variabel av strängtyp till en int
variabel.
Obs : Om strängvariabeln inte kan konverteras till heltalsvariabeln NumberFormatException
inträffar ett undantag med namnet .