Tässä opetusohjelmassa opit Java Type Castingista ja sen tyypeistä esimerkkien avulla.
Ennen kuin opit Java Type Castingista , varmista, että tiedät Java-tietotyypeistä.
Tyyppi Casting
Prosessi arvo muunnetaan yhden datatyypin ( int
, float
, double
, jne.) Toiseen tietotyyppi tunnetaan tyypittely.
Javassa on 13 tyyppimuunnostyyppiä. Tässä opetusohjelmassa keskitymme kuitenkin vain kahteen tärkeimpään tyyppiin.
1. Levitystyyppivalu
2. Kapeneva tyyppi valu
Lisätietoja muun tyyppisistä muunnoksista on Java Type Conversion -sivustossa (virallinen Java-dokumentaatio).
Laajentava tyyppivalu
Vuonna laajentaminen Tyyppi Casting , Java muuntaa tietotyyppi toiseen tietotyyppi.
Esimerkki: Muuntaa int kaksinkertaiseksi
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); ) )
Tuotos
Kokonaisluku: 10 Kaksinkertainen arvo: 10,0
Yllä olevassa esimerkissä osoitamme tyyppimuuttujan int
nimeltä num double
tyypin muuttujalle nimeltä data.
Tässä Java muuntaa ensin int
tyyppitiedot double
tyypiksi. Ja sitten määritä se double
muuttujalle.
Tapauksessa laajentaminen Type Casting , että alempi data tyyppi (joilla on pienempi koko) muutetaan datan suuremman tyyppi (kooltaan suurempien). Siksi dataa ei menetetä. Siksi tämän tyyppinen muunnos tapahtuu automaattisesti.
Huomaa : Tätä kutsutaan myös implisiittisen tyypin suoratoistoksi .
Kapea tyyppi Casting
Vuonna Kaventaminen Tyyppi Casting , meillä käsin muuttaa yhden tietotyyppi toiseen käyttämällä sulkuja.
Esimerkki: Tuplan muuntaminen intiksi
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); ) )
Tuotos
Kaksinkertainen arvo: 10,99 Kokonaisluku: 10
Yllä olevassa esimerkissä osoitamme tyyppimuuttujan double
nimeltä num int
tyypin muuttujalle nimeltä data.
Huomaa rivi,
int data = (int)num;
Tässä int
sulkeissa oleva avainsana osoittaa, että num-muuttuja muunnetaan int
tyypiksi.
Tapauksessa kaventaminen Type Casting , korkeampi tietotyypit (kooltaan suurempien) muunnetaan alemman tietotyyppejä (jossa on pienempi koko). Tästä seuraa tietojen menetys. Siksi tämän tyyppinen muunnos ei tapahdu automaattisesti.
Huomaa : Tätä kutsutaan myös nimenomaiseksi tyypin suoratoistoksi .
Katsotaanpa joitain esimerkkejä muun tyyppisistä muunnoksista Javassa.
Esimerkki 1: Tyyppimuunnos int-merkkijonoksi
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); ) )
Tuotos
Lukuarvo on: 10 Merkkijonon arvo on: 10
Huomaa yllä olevassa ohjelmassa rivi
String data = String.valueOf(num);
Tässä olemme valueOf()
muuttaneet int-tyyppisen muuttujan merkkijonoksi Java String -luokan menetelmällä.
Esimerkki 2: Kirjoita muunnos merkkijonosta int-muotoon
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); ) )
Tuotos
Merkkijonon arvo on: 10 Lukuarvo on: 10
Huomaa yllä olevassa esimerkissä viiva
int num = Integer.parseInt(data);
Tässä olemme käyttäneet parseInt()
Java- Integer
luokan menetelmää muuntaa merkkijonotyyppinen muuttuja int
muuttujaksi.
Huomaa : Jos merkkijonomuuttujaa ei voida muuntaa kokonaislukumuuttujaksi, NumberFormatException
tapahtuu nimetty poikkeus .