Hvad er typecasting i Java, og hvordan fungerer det?



Type casting i Java tildeler en værdi af en primitiv datatype til en anden. I denne artikel vil jeg fortælle dig om forskellige typer typekonvertering.

Programmering spiller rundt med data. I , der er mange datatyper. For det meste under kodning er det nødvendigt at ændre datatypen for at forstå behandlingen af ​​en variabel, og dette kaldes Type Casting. I denne artikel vil jeg tale om det grundlæggende ved Type Casting i Java.

Nedenstående emner er dækket af denne artikel:

Lad os komme igang!





Hvad er Type Casting?

Type casting er intet andet end at tildele en værdi på en til en anden. Når du tildeler værdien af ​​en datatype til en anden, skal du være opmærksom på datatypens kompatibilitet. Hvis de er kompatible, så udfører konverteringen automatisk kendt som Automatisk typekonvertering og hvis ikke, skal de støbes eller konverteres eksplicit.

Der er to typer casting i Java som følger:



til kraften i Java
  • Udvidelse af støbning (automatisk) - Dette involverer konvertering af en mindre datatype til den større typestørrelse.

    byte -> kort -> char -> int -> lang -> float -> dobbelt

  • Begrænsning af støbning (manuelt) - Dette indebærer konvertering af en større datatype til en mindre størrelsestype.



    dobbelt -> flyde -> langt -> int -> char -> kort -> byte

Lad os nu komme nærmere ind på typerne af typen casting.

Udvidelse af støbning

Denne type casting finder sted, når to datatyper konverteres automatisk. Det er også kendt som Implicit Conversion. Dette sker, når de to datatyper er kompatible, og også når vi tildeler værdien af ​​en mindre til en større datatype.

For eksempel, De numeriske datatyper er kompatible med hinanden, men ingen automatisk konvertering understøttes fra numerisk type til char eller boolsk. Også char og boolean er ikke kompatible med hinanden. Lad os nu skrive en logik til Implicit type casting for at forstå, hvordan det fungerer.

public class Conversion {public static void main (String [] args) {int i = 200 // automatisk type konvertering lang l = i // automatisk type konvertering float f = l System.out.println ('Int værdi' + i) System.out.println ('Lang værdi' + l) System.out.println ('Flydeværdi' + f)}}

Produktion:

Int-værdi 200 Lang værdi 200 Flydeværdi 200,0

Lad os gå videre og forstå, hvordan Eksplicit Type Casting fungerer.

Smalere støbning

I dette tilfælde, hvis du vil tildele en værdi af større datatype til en mindre datatype, kan du udføre Eksplicit type støbning eller indsnævring. Dette er nyttigt til inkompatible datatyper, hvor automatisk konvertering ikke kan foretages.

Lad os forstå dette ved hjælp af et eksempel.

// Java-program for at illustrere eksplicit type konvertering offentlig klasse Indskrænkning {offentlig statisk ugyldig hoved (String [] args) {dobbelt d = 200.06 // eksplicit type casting lang l = (lang) d // eksplicit type casting int i = (int ) l System.out.println ('Værdi med dobbelt datatype' + d) // mistet brøkdel System.out.println ('Lang værdi for datatype' + l) // brøkdel mistet System.out.println ('Int Datatypeværdi '+ i)}}

Produktion:

Dobbelt Datatype værdi 200.06 Lang Datatype værdi 200 Int Datatype værdi 200

Nu hvor du ved, hvordan du udfører eksplicit type casting, lad os gå videre og forstå, hvordan eksplicit casting kan udføres på Java-udtryk.

Eksplicit type støbning i udtryk

Når du evaluerer udtryk, output opdateres automatisk til operandens større datatype. Men hvis du gemmer det resultat i en mindre datatype, genererer det kompileringstidsfejl, hvorfor vi skal skrive cast output.

Eksempel:

// Java-program for at illustrere type casting int til byte public class ExplicitTest {public static void main (String args []) {byte b = 70 // type casting int to byte b = (byte) (b * 2) System.out .println (b)}}

Produktion:

140

Bemærk: I tilfælde af enkeltoperander bliver resultatet konverteret til int, og derefter støbes det i overensstemmelse hermed.

Så det handlede kun om Explicit Type Casting i Java.Med dette kommer vi til slutningen af ​​denne artikel. jeghåber du fandt det informativt. Hvis du ønsker at lære mere, kan du tjekke vores såvel.

Tjek den af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden. Vi er her for at hjælpe dig med hvert trin på din rejse, for at blive et ud over dette java-interviewspørgsmål, kommer vi med en læseplan, der er designet til studerende og fagfolk, der ønsker at være Java-udvikler.

Har du et spørgsmål til os? Nævn det i kommentarfeltet i denne 'Type Casting in Java' -artikel, og vi vender tilbage til dig hurtigst muligt.