Jos haluaa muuttaa char-tyyppiset luvut int-tyyppisiksi, kumpaa kannattaa käyttää?
character.isDigit vai character.digit?
---------------------------...
1762
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 1
Vanhimmat
Koska char on 16 bittinen luku ja int 32 bittinen luku onnistuu muunnos suoralla sijoituksella.
--- ESIMERKKI ALKAA ---
public class Esimerkki {
public static void main (String[] args) {
char charluku1 = '2';
char charluku2 = 3434;
int luku1 = charluku1;
int luku2 = charluku2;
System.out.println("luku1: " luku1);
System.out.println("luku2: " luku2);
}
}
--- ESIMERKKI LOPPUU ---
Jos haluat selvittää merkin numero arvon, onnistuu se digit metodilla. Digit palauttaa arvon -1 jos muunnos ei ole mahdollinen.
--- ESIMERKKI ALKAA ---
public class Esimerkki {
public static void main (String[] args) {
char charluku1 = '2';
char charluku2 = 3434;
char charluku3 = 5555;
int luku1 = Character.digit(charluku1, 10);
int luku2 = Character.digit(charluku2, 10);
int luku3 = Character.digit(charluku3, 10);
System.out.println("luku1: " luku1);
System.out.println("luku2: " luku2);
System.out.println("luku3: " luku3);
}
}
--- ESIMERKKI LOPPUU ---
Metodi isDigit ei muunna mitään, vaan sen avulla voi testata vastaako merkki jotakin desimaali järjestelmän numeroista.
getNumericValue metodilla voi myös suorittaa muunnoksen (ottaa mukaan myös roomalaiseten numeroiden merkit).
--- ESIMERKKI ALKAA ---
public class Esimerkki {
public static void main (String[] args) {
for (char merkki = 8560; merkki = '0' && merkki