Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
1
respuesta

[Duda] Uso de casting

Hola, intuyo que mi pregunta podría ser muy básica, pero agradecería mucho se pueda resolver. Entiendo la lógica de uso de casting principalmente con los tipos primitivos, pero mi duda es por qué en lugar de hacer el casting no se pone de frente el tipo a usar, es decir, en lugar de cambiar de de un double a un int, por ejemplo, no se pone de frente el int.

1 respuesta
solución!

Hola Mónica, espero que estés bien

Entiendo tu duda y es totalmente válida. El uso de casting en Java, especialmente cuando trabajamos con tipos primitivos, puede parecer un poco confuso al principio.

La razón por la que no simplemente se "pone de frente" el tipo que deseas usar, como mencionas, es porque a veces el tipo de dato original no es compatible directamente con el tipo de dato que deseas utilizar. Por ejemplo, si tienes un double y deseas convertirlo a un int, simplemente asignarlo directamente no funcionaría porque Java necesita saber que estás consciente de que podrías perder información en el proceso (como la parte decimal).

El casting explícito es una forma de decirle al compilador que entiendes las implicaciones de la conversión y que estás de acuerdo con ellas. En el ejemplo que diste, convertir un double a un int implica que la parte decimal será truncada. Al usar (int), estás indicando que aceptas esta pérdida de precisión.

Por otro lado, cuando el tipo de dato de destino puede contener todos los valores del tipo de dato de origen, como al asignar un int a un double, el casting es implícito y el compilador lo hace automáticamente porque no hay riesgo de pérdida de información.

Espero que esto aclare tu duda. ¡Espero haber ayudado y buenos estudios!