Què és Typecasting a Java i com funciona?

El càsting de tipus a Java és assignar un valor d’un tipus de dades primitiu a un altre. En aquest article, us explicaré diversos tipus de conversió de tipus.

La programació és jugar amb les dades. En , hi ha molts tipus de dades. La majoria de les vegades, mentre es codifica, cal canviar el tipus de dades per entendre el processament d’una variable i això s’anomena Casting de tipus. En aquest article, parlaré dels fonaments del tipus de càsting a Java.



A continuació, es tracten els temes següents en aquest article:

Comencem!



com trobar el nombre més gran en una matriu java

Què és Type Casting?

Escriure tipus no és més que assignar-ne un valor a un altre. Quan assigneu el valor d'un tipus de dades a un altre, haureu de ser conscients de la compatibilitat del tipus de dades. Si són compatibles, doncs realitzarà la conversió coneguda automàticament com a Conversió automàtica de tipus i en cas contrari, cal convertir-los o convertir-los explícitament.

Hi ha dos tipus de càsting a Java de la següent manera:



  • Ampliació del càsting (automàticament) - Això implica la conversió d'un tipus de dades més petit a la mida del tipus més gran.

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

  • Càsting reduït (manualment) - Això implica convertir un tipus de dades més gran a un tipus de mida més petita.



    doble -> flotador -> llarg -> int -> caracter -> curt -> byte

Ara anem a conèixer els detalls dels tipus de fosa de tipus.

Ampliació de fosa

Aquest tipus de càsting es produeix quan es converteixen automàticament dos tipus de dades. També es coneix com a conversió implícita. Això passa quan els dos tipus de dades són compatibles i també quan assignem el valor d'un més petit a un tipus de dades més gran.

Per exemple, Els tipus de dades numèriques són compatibles entre si, però no s'admet cap conversió automàtica des del tipus numèric fins al caràcter booleà. A més, char i booleà no són compatibles entre si. Ara escrivim una lògica per al càsting de tipus implícit per entendre com funciona.

public class Conversion {public static void main (String [] args) {int i = 200 // conversió de tipus automàtica llarga l = i // conversió de tipus automàtica float f = l System.out.println ('valor Int' + i) System.out.println ('Valor llarg' + l) System.out.println ('Valor flotant' + f)}}

Sortida:

què és una classe anònima a Java
Valor int 200 Valor llarg 200 Valor flotant 200,0

Ara anem més enllà i entenem com funciona el càsting de tipus explícit.

Càsting reduït

En aquest cas, si voleu assignar un valor de tipus de dades més gran a un tipus de dades més petit, podeu fer-ho Fosa de tipus explícit o estrenyent-se. Això és útil per als tipus de dades incompatibles on no es pot fer la conversió automàtica.

Entenguem això amb l’ajut d’un exemple.

// Programa Java per il·lustrar la conversió de tipus explícit classe pública Limitació {public static void main (String [] args) {double d = 200.06 // tipus explícit casting llarg l = (llarg) d // tipus explícit casting int i = (int ) l System.out.println ('Valor tipus doble de dades' + d) // part fraccionària perduda System.out.println ('Valor tipus llarg de dades' + l) // part fraccionària perduda System.out.println ('Int Valor del tipus de dades '+ i)}}

Sortida:

Doble valor del tipus de dades 200,06 Llarg valor del tipus de dades 200 Int Valor del tipus de dades 200

Ara que ja sabeu com fer un càsting de tipus explícit, anem més enllà i entenem com es pot realitzar un càsting explícit en expressions Java.

Emissió de tipus explícita a Expressions

Quan esteu avaluant el fitxer expressions, la sortida s'actualitza automàticament al tipus de dades més gran de l'operand. Però si emmagatzemeu aquest resultat en qualsevol tipus de dades més petit, es generarà un error de temps de compilació, a causa del qual hem d’escriure cast la sortida.

Exemple:

// Programa Java per il·lustrar el tipus casting int to byte de classe pública ExplicitTest {public static void main (String args []) {byte b = 70 // type casting int to byte b = (byte) (b * 2) System.out .println (b)}}

Sortida:

140

Nota: En el cas d'operands simples, el resultat es converteix en int i llavors s'escriu en conseqüència.

titella vs ansible vs xef

Així, doncs, es tractava de càsting de tipus explícit a Java.Amb això, arribem al final d’aquest article. Joespero que us hagi estat informatiu. Si voleu obtenir més informació, podeu consultar el nostre també.

Consulteu el per Edureka, una empresa d'aprenentatge en línia de confiança amb una xarxa de més de 250.000 estudiants satisfets repartits per tot el món. Estem aquí per ajudar-vos en tots els passos del vostre viatge, per convertir-vos en una pregunta a part d’aquestes entrevistes java, oferim un pla d’estudis dissenyat per a estudiants i professionals que vulguin ser desenvolupador de Java.

Tens alguna pregunta? Si us plau, mencioneu-lo a la secció de comentaris d'aquest article 'Tipus de càsting a Java' i us respondrem el més aviat possible.