Selles õpetuses õpime näidete abil Java Type Castingut ja selle tüüpe.
Enne kui saate õppida Java-tüüpi ülekandmist , veenduge, et teaksite Java-tüüpi andmetüüpe.
Tüüp Casting
Protsess, väärtus üks andmetüübi ( int
, float
, double
jne) teisele andmetüübi tuntakse typecasting.
Javas on tüübikonversiooni 13 tüüpi. Selles õpetuses keskendume siiski ainult kahele peamisele tüübile.
1. Laiendav tüüpvalamine
2. Kitseneva tüübi casting
Muud tüüpi tüübikonversioonide kohta lisateabe saamiseks külastage Java tüübikonversiooni (ametlik Java dokumentatsioon).
Laieneva tüübi valamine
In laiendamine Liik Casting , Java automaatselt teisendab ühe andmetüübi teise andmete tüüp.
Näide: int teisendamine kahekordseks
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); ) )
Väljund
Täisarv: 10 kahekordne väärtus: 10,0
Ülaltoodud näites määrame tüübimuutuja int
nimega num tüübimuutujale double
nimega andmed.
Siin Java esimese teisendab int
andmete trükkimiseks double
tüüp. Ja seejärel määrake see double
muutujale.
Juhul laiendamine Liik Valamine alumine andmetüübi (millel väiksuse) muundatakse kõrgem andmetüübi (millel suurematele). Seega ei kaota andmeid. Seetõttu toimub seda tüüpi teisendamine automaatselt.
Märkus . Seda tuntakse ka kaudse tüübi ülekandena .
Kitseneva tüübi casting
In kitsendamine Liik Casting , me käsitsi vahetada üks andmete tüüp teise kasutades sulgudes.
Näide: kahekordse teisendamine int-ks
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); ) )
Väljund
Topeltväärtus: 10,99 Täisarvu väärtus: 10
Ülalolevas näites määrame tüübimuutuja double
nimega num tüübimuutujale int
nimega andmed.
Pange tähele joont,
int data = (int)num;
Siin int
näitab sulgudes olev märksõna, et muutuja arv teisendatakse int
tüübiks.
Juhul kitsenemine Liik Valamine , seda kõrgem andmetüüpe (millel suurematele) muundatakse madalam andmetüüpe (millel väiksuse). Seega on andmete kadu. Seetõttu ei toimu seda tüüpi teisendusi automaatselt.
Märkus . Seda tuntakse ka otsese tüübi ülekandena .
Vaatame mõningaid Java muud tüüpi konversioonide näiteid.
Näide 1: Tüübi teisendamine int-st stringiks
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); ) )
Väljund
Täisarvu väärtus on: 10 Stringi väärtus on: 10
Eeltoodud programmis märka rida
String data = String.valueOf(num);
Siin oleme muutnud valueOf()
int-tüüpi muutuja stringiks teisendusklassi Java String meetodi abil.
Näide 2: Tüübi teisendamine stringist int-ks
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); ) )
Väljund
Stringi väärtus on: 10 Täisarvu väärtus on: 10
Ülaltoodud näites märkake joont
int num = Integer.parseInt(data);
Siin oleme stringitüübi muutuja muutujaks teisendamiseks kasutanud parseInt()
Java- Integer
klassi meetodit int
.
Märkus . Kui stringimuutujat ei saa teisendada täisarvumuutujaks, NumberFormatException
tekib nimega erand .