Tässä ohjelmassa opimme muuntamaan kokonaisluku (int) muuttujan merkiksi (char) Java-muodossa.
Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista Java-ohjelmointiaiheista:
- Java-tietotyypit (primitiivinen)
- Java Basic -syöttö ja -lähtö
Esimerkki 1: Java-ohjelma muuntaa int-merkiksi
class Main ( public static void main(String() args) ( // create int variables int num1 = 80; int num2 = 81; // convert int to char // typecasting char a = (char)num1; char b = (char)num2; // print value System.out.println(a); // P System.out.println(b); // Q ) )
Yllä olevassa esimerkissä meillä on int
tyyppimuuttujia num1 ja num2. Huomaa rivi,
char a = (char)num1;
Täällä käytämme tyypittely peitellyt int
tyypin muuttuja osaksi char
tyyppi muuttuja. Lisätietoja on Java Typecasting -sivulla.
Huomaa, että int
arvoja käsitellään ASCII-arvoina. Siksi saamme P varten int
arvon 80 ja Q ja int
arvo 81 . Se johtuu siitä, että ASCII-arvon P ja Q ovat 80 ja 81 vastaavasti.
Esimerkki 2: int hiilet käyttämällä forDigit ()
Voimme myös käyttää forDigit()
menetelmää Character
luokan muuntaa int
tyypin muuttujan char
tyyppi.
class Main ( public static void main(String() args) ( // create int variables int num1 = 1; int num2 = 13; // convert int to char // for value between 0-9 char a = Character.forDigit(num1, 10); // for value between 0-9 char b = Character.forDigit(num2, 16); // print value System.out.println(a); // 1 System.out.println(b); // d ) )
Huomaa ilmaisu,
char a = Character.forDigit(num1, 10);
Olemme käyttäneet forDigit()
menetelmää, joka muuntaa määritetyn int
arvon char
arvoksi.
Tässä 10 ja 16 ovat vastaavasti desimaalilukujen ja heksadesimaalilukujen radiksiarvot. Eli jos int
arvo on välillä 0-9 , käytämme radix-arvona arvoa 10 , jos int
arvo on välillä 0-15 , käytämme arvoa 16 ja niin edelleen.
Lisätietoja forDigit()
menetelmästä on Java Character.forDigit () -sivustossa (Virallinen Oracle-dokumentaatio).
Esimerkki 3: int char char lisäämällä '0'
Java-ohjelmassa voimme myös muuntaa kokonaisluvun merkiksi lisäämällä siihen merkin '0' . Esimerkiksi,
class Main ( public static void main(String() args) ( // create int variables int num1 = 1; int num2 = 9; // convert int to char char a = (char)(num1 + '0'); char b = (char)(num2 + '0'); // print value System.out.println(a); // 1 System.out.println(b); // 9 ) )
Huomaa yllä olevassa esimerkissä viiva,
char a = (char)(num1 + '0');
Tässä merkki '0' muunnetaan ASCII-arvoksi 48 . Arvo 48 lisätään num1: n (eli 1) arvoon. Tulos 49 on ASCII-arvo 1 . Tästä syystä saamme tuotokseksi merkin '1'.
Huomaa : Tämä koskee vain int
arvoja 0–9 .