Co je Typecasting v Javě a jak to funguje?



Typ casting v Javě je přiřazení hodnoty jednoho primitivního datového typu jinému. V tomto článku vám povím o různých typech převodu typů.

Programování si pohrává s daty. v , existuje mnoho datových typů. Většinou je při kódování nutné změnit typ dat, aby bylo možné porozumět zpracování proměnné, a to se nazývá Type Casting. V tomto článku budu hovořit o základech Type Casting v Javě.

V tomto článku se věnujeme níže uvedeným tématům:

Začněme!





Co je to Casting?

Přetypování není nic jiného než přiřazení hodnoty jedné jinému. Když přiřadíte hodnotu jednoho datového typu jinému, měli byste si být vědomi kompatibility datového typu. Pokud jsou kompatibilní, pak provede převod automaticky známý jako Automatická konverze typu a pokud ne, pak musí být výslovně odlity nebo převedeny.

V Javě existují dva typy odlévání:



  • Rozšíření castingu (automaticky) - Jedná se o převod menšího datového typu na větší velikost.

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

  • Zúžení odlévání (ručně) - To zahrnuje převod většího datového typu na menší velikost.



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

    php print_r na řetězec

Nyní se podívejme na podrobnosti typů odlévání typů.

Rozšíření odlévání

K tomuto typu castingu dochází, když jsou automaticky převedeny dva datové typy. Je také známý jako implicitní převod. K tomu dochází, když jsou dva datové typy kompatibilní a také když přiřadíme hodnotu menšího na větší datový typ.

Například, Číselné datové typy jsou navzájem kompatibilní, ale automatický převod z číselného typu na char nebo boolean není podporován. Char a boolean také nejsou navzájem kompatibilní. Nyní napíšeme logiku pro casting implicitního typu, abychom pochopili, jak to funguje.

public class Conversion {public static void main (String [] args) {int i = 200 // automatický převod typu dlouhý l = i // automatický převod typu float f = l System.out.println ('Int value' + i) System.out.println ('Long value' + l) System.out.println ('Float value' + f)}}

Výstup:

Int hodnota 200 Dlouhá hodnota 200 Plovoucí hodnota 200.0

Nyní pojďme dále a pochopme, jak funguje Explicit Type Casting.

Zúžení odlévání

V tomto případě, pokud chcete přiřadit hodnotu většího datového typu menšímu datovému typu, můžete provést Explicitní odlévání typu nebo zúžení. To je užitečné pro nekompatibilní datové typy, kde nelze provést automatický převod.

Pochopme to pomocí příkladu.

// Program Java pro ilustraci převodu explicitního typu veřejná třída Narrowing {public static void main (String [] args) {double d = 200.06 // explicitní typ casting long l = (long) d // explicitní typ casting int i = (int ) l System.out.println ('hodnota Double Data Type' + d) // část zlomku System.out.println ('hodnota Long Data Type' + l) // část zlomku System.out.println ('Int Hodnota datového typu '+ i)}}

Výstup:

Dvojitá hodnota datového typu 200,06 Dlouhá hodnota datového typu 200 Int Hodnota datového typu 200

Nyní, když víte, jak provádět obsazení explicitního typu, pojďme se posunout dále a pochopit, jak lze provést explicitní přetypování na výrazy Java.

Explicitní odlévání typu ve výrazech

Když hodnotíte výrazy, výstup se automaticky aktualizuje na větší datový typ operandu. Ale pokud tento výsledek uložíte do jakéhokoli menšího datového typu, vygeneruje se chyba kompilace času, kvůli které musíme zadat výstup.

Příklad:

// Program Java pro ilustraci typu casting int do bytu veřejná třída ExplicitTest {public static void main (String args []) {byte b = 70 // typ casting int do bytu b = (byte) (b * 2) System.out .println (b)}}

Výstup:

140

Poznámka: V případě jednotlivých operandů se výsledek převede na int a poté se odpovídajícím způsobem vrhne.

Takže to bylo všechno o Explicit Type Casting v Javě.Tímto se dostáváme na konec tohoto článku. Jádoufám, že vám to připadalo poučné. Pokud se chcete dozvědět více, můžete se podívat na naše také.

Podívejte se na Edureka, důvěryhodná online vzdělávací společnost se sítí více než 250 000 spokojených studentů rozložených po celém světě. Jsme tu, abychom vám pomohli s každým krokem na vaší cestě, abychom se kromě otázek týkajících se tohoto rozhovoru pro javu stali i učebním plánem, který je určen pro studenty a profesionály, kteří chtějí být vývojářem Java.

hlavní rozdíl mezi hackerem a etickým hackerem je:

Máte na nás dotaz? Uveďte to prosím v sekci komentářů v tomto článku „Typ Casting in Java“ a my se vám ozveme co nejdříve.