logo

Vrsta Casting v Javi

V Javi, tipsko ulivanje je metoda ali postopek, ki pretvarja podatkovni tip v drug podatkovni tip na oba načina ročno in samodejno. Samodejno pretvorbo izvede prevajalnik, ročno pretvorbo pa programer. V tem razdelku bomo razpravljali tipsko ulivanje in njegove vrste z ustreznimi primeri.

Vrsta Casting v Javi

Tipsko ulivanje

Pretvorba vrednosti iz ene vrste podatkov v drugo vrsto podatkov je znana kot tipsko ulivanje .

Vrste vlivanja tipov

Obstajata dve vrsti vlivanja tipa:

  • Razširitev tipa Casting
  • Zožitev tipa Casting

Razširitev tipa Casting

Pokliče se pretvorba nižjega podatkovnega tipa v višjega širitev tipsko ulivanje. Znan je tudi kot implicitna pretvorba oz odmetavanje . Izvaja se samodejno. Varno je, ker ni možnosti za izgubo podatkov. Poteka, ko:

zbirka vzmetnih orodij
  • Oba tipa podatkov morata biti med seboj združljiva.
  • Ciljni tip mora biti večji od izvornega tipa.
 byte -> short -> char -> int -> long -> float -> double 

Na primer, pretvorba med številskim podatkovnim tipom v char ali Boolean se ne izvede samodejno. Poleg tega tipa podatkov char in Boolean nista združljiva med seboj. Poglejmo primer.

kako ustvariti matriko v Javi

WideningTypeCastingExample.java

 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); } } 

Izhod

 Before conversion, the value is: 7 After conversion, the long value is: 7 After conversion, the float value is: 7.0 

V zgornjem primeru smo vzeli spremenljivko x in jo pretvorili v dolg tip. Po tem se dolgi tip pretvori v plavajoči tip.

Zožitev tipa Casting

Pokliče se pretvorba višjega podatkovnega tipa v nižjega zoženje tipsko ulivanje. Znan je tudi kot eksplicitna pretvorba oz oddaja . To naredi programer ročno. Če ne izvedemo prevajanja, prevajalnik sporoči napako med prevajanjem.

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

Oglejmo si primer ulivanja zoženega tipa.

V naslednjem primeru smo dvakrat izvedli ulivanje zoženega tipa. Najprej smo pretvorili dvojni tip v dolgi podatkovni tip, potem ko je ta dolgi podatkovni tip pretvorjen v int tip.

NarrowingTypeCastingExample.java

cepitev nizov c++
 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); } } 

Izhod

 Before conversion: 166.66 After conversion into long type: 166 After conversion into int type: 166