Given the following code:
char x = '5'; int a0 = x - '0'; // 0 int a1 = Integer.parseInt(x + ""); // 1 int a2 = Integer.parseInt(Character.toString(x)); // 2 int a3 = Character.digit(x, 10); // 3 int a4 = Character.getNumericValue(x); // 4 System.out.printf("%d %d %d %d %d", a0, a1, a2, a3, a4);
(version 4 credited to: casablanca)
What do you consider to be the "best-way" to convert a char into an int ? ("best-way" ~= idiomatic way)
We are not converting the actual numerical value of the char, but the value of the representation.
Eg.:
convert('1') -> 1 convert('2') -> 2 ....
In Java, we can convert the Char to Int using different approaches. If we direct assign char variable to int, it will return the ASCII value of a given character. If the char variable contains an int value, we can get the int value by calling Character. getNumericValue(char) method.
How about Character.getNumericValue
?
I'd strongly prefer Character.digit
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With