Obtenga el valor ASCII en la palabra de entrada

Tengo un personaje:

char ch='A' 

Dame el método que convierte el char to ASCII
o forma que devuelve un ASCII NUMBER .

Salida: 65

 char ch='A'; System.out.println((int)ch); 

Hay un importante problema relacionado con obtener un código ASCII de un valor de char .

En el sentido correcto, no se puede hacer.

Es porque char tiene un rango de 65535 mientras que ASCII está restringido a 128 . Hay una gran cantidad de personajes que no tienen representación ASCII en absoluto.

La forma correcta sería usar un punto de código Unicode que sea el equivalente numérico estándar de un personaje en el universo de Java.

Afortunadamente, Unicode es un superconjunto completo de ASCII. Eso significa que los números Unicode para caracteres latinos son iguales a sus homólogos ASCII. Por ejemplo, A en Unicode es U+0041 o 65 en decimal. Por el contrario, ASCII no tiene ningún mapeo para el 99% de los char-s. Larga historia corta:

 char ch = 'A'; int cp = String.valueOf(ch).codePointAt(0); 

Además, un char primitivo de 16 bits en realidad representa una unidad de código , no un carácter y, por lo tanto, está restringido al plano multilingüe básico , por razones históricas . Las entidades que están más allá requieren objetos de caracteres que eliminen la limitación fija de longitud de bits.

Un char es en realidad un tipo de datos numéricos: puede agregar uno a un int , por ejemplo. Es un short sin firmar (16 bits). En ese sentido, puede simplemente emitir el resultado a, por ejemplo, un int para obtener el valor numérico.

Sin embargo, debe pensar un poco más sobre lo que está preguntando: no todos los caracteres son valores ASCII. ¿Qué salida esperas para â , por ejemplo, o ?

Además, ¿por qué quieres esto? En este día y edad deberías estar pensando en Unicode, no en ASCII. Si le informa a la gente cuál es su objective y cómo piensa usar este valor devuelto, podemos casi seguramente informarle sobre una mejor manera de lograrlo.

char (con una minúscula c) es un tipo numérico. Ya posee el valor ascii del char. Simplemente transfiéralo a un número entero para mostrarlo como un valor numérico en lugar de un valor de texto:

 System.out.println("char " + ch + " has the following value : " + (int) ch); 
 char a='a'; char A='A'; System.out.println((int)a +" "+(int)A); Output: 97 65 

simplemente haz

 int a = ch 

(también esto no tiene nada que ver con Android)