Respuesta a Etho y Sal00m. Pasar caracter a ASCII.

Lemony Snickets
14 de Enero del 2005
Hola,...

NO es necesario hacer el casting explícito. En JAVA se llevan a cabo conversiones implícitas. Cuando se trabaja con primitivos hay 3 casos en los cuales se efectúan estas conversiones implícitas:

1) Asignaciones. En este caso se sigue el criterio de Widening Conversion. Así, si la variable receptora es de un tipo primitivo "más ancho" que el tipo del valor asignado se lleva a cabo la conversión. De hecho se define un árbol de conversiones implícitas...

De byte a short, int, long, float, double.
De short a int, long, float, double.
De char a int,long, float, double.
De int a long, float, double.
De long a float, double.
De float a double.

2) Llamadas a métodos. Se sigue el mismo criterio Widening Conversion

3) Promociones artiméticas. Para operadores unarios se realiza una conversión implícita de short, byte, char a int. Para operadores binarios (dos operandos implicados) se realiza una conversión al más ancho de los dos y siempre por encima de int. Así por ejemplo, por causa de esta conversión implícita no es posible almacenar una suma de dos operandos short en un short. Se promocionan los dos operandos a int y el resultado siempre es int.

Espero haber aclarado cualquier duda. En cualquier caso podéis probar el código de ejemplo de mi respuesta original si no os fiais...

Un saludo.

sal00m
14 de Enero del 2005
Gran aclaracion..... muchas gracias Lemony..... los puntos 1 y 2 no los conocia la verdad..... osea que si yo llamo a un procedimiento que solo acepta int y le paso un char (por ejemplo '2', siempre y cuando sea un numero claro esta), lo convierte automaticamente JAVA??????

Lo de las conversiones con caracteres unarios si que lo sabia igual que para pasar un numero a string puedes hacer (num + "") y ya lo tienes jejeje

eth0
14 de Enero del 2005
Lo has hecho, sin duda. Gracias Lemony.