Java Type Casting (med eksempler)

I denne vejledning lærer vi om Java Type Casting og dens typer ved hjælp af eksempler.

Før du lærer om Java Type Casting , skal du sørge for at kende til Java-datatyper.

Type støbning

Processen med omdannelse af værdien af en datatype ( int, float, double, etc.) til en anden datatype er kendt som typecasting.

I Java er der 13 typer typekonvertering. I denne vejledning vil vi dog kun fokusere på de 2 største typer.

1. Udvidelse af type støbning

2. Støbning af indsnævringstype

For at lære om andre typer typekonvertering, besøg Java Type Conversion (officiel Java-dokumentation).

Udvidelse af støbning

I Udvidelse af Type Casting konverterer Java automatisk en datatype til en anden datatype.

Eksempel: Konvertering af int til dobbelt

 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ærdien: 10 Den dobbelte værdi: 10,0 

I ovenstående eksempel tildeler vi typevariablen intnavngivet num til en doubletypevariabel med navnet data.

Her konverterer Java først typedataene inttil doubletypen. Og tildel det derefter til doublevariablen.

I tilfælde af udvidelse af type casting konverteres den lavere datatype (med mindre størrelse) til den højere datatype (med større størrelse). Derfor er der intet tab af data. Dette er grunden til, at denne type konvertering sker automatisk.

Bemærk : Dette er også kendt som Implicit Type Casting .

Smalningstype støbning

I Narrowing Type Casting konverterer vi manuelt en datatype til en anden ved hjælp af parentesen.

Eksempel: Konvertering af dobbelt til et 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

 Den dobbelte værdi: 10,99 Heltalsværdien: 10 

I ovenstående eksempel tildeler vi typevariablen doublenavngivet num til en inttypevariabel med navnet data.

Bemærk linjen,

 int data = (int)num; 

Her angiver intnøgleordet inden for parentesen, at variablen num konverteres til inttypen.

I tilfælde af indsnævrende type casting konverteres de højere datatyper (med større størrelse) til lavere datatyper (med mindre størrelse). Derfor er der tab af data. Dette er grunden til, at denne type konvertering ikke sker automatisk.

Bemærk : Dette er også kendt som Explicit Type Casting .

Lad os se nogle af eksemplerne på andre typer konverteringer i Java.

Eksempel 1: Skriv konvertering fra int til streng

 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ærdien er: 10 Strengværdien er: 10 

I ovenstående program skal du bemærke linjen

 String data = String.valueOf(num); 

Her har vi brugt valueOf()metoden i Java String-klassen til at konvertere variablen int-type til en streng.

Eksempel 2: Skriv konvertering fra streng til 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

 Strengværdien er: 10 Heltalsværdien er: 10 

I ovenstående eksempel bemærk linjen

 int num = Integer.parseInt(data); 

Her har vi brugt parseInt()metoden i Java- Integerklassen til at konvertere en strengtypevariabel til en intvariabel.

Bemærk : Hvis strengvariablen ikke kan konverteres til heltalsvariablen, NumberFormatExceptionforekommer en navngivet undtagelse .

Interessante artikler...