Mi respuesta es similar a la respuesta de jh314, pero la explicaré un poco más.
Lo que debe hacer en este caso es:
int a = 1;
char b = (char)(a + '0');
System.out.println(b);
Aquí, usamos '0' porque los caracteres en realidad están representados por valores ASCII. '0' es un carácter y está representado por el valor de 48.
Escribimos (a + '0')
y para sumarlos, Java convirtió '0' a su valor ASCII que es 48 y a es 1, por lo que la suma es 49. Entonces lo que hicimos fue:
(char)(49)
Hemos lanzado int
a char
. El equivalente ASCII de 49 es '1'. Puede convertir cualquier dígito a char de esta manera y es más inteligente y mejor que usar el .toString()
método y luego restar el dígito por .charAt()
método.
b = (char)('0' + a)
pero solo para0 <= a <= 9
.