Así es como funciona:
`` `Java
clase pública Floattodouble {
public static void main (string [] args) {
flotante myfloat =3.14f; // Tenga en cuenta que el sufijo 'F' es crucial para los literales flotantes.
doble myDouble =myfloat; // conversión implícita
System.out.println ("float:" + myfloat);
System.out.println ("double:" + myDouble);
}
}
`` `` ``
La línea `double myDouble =myfloat;` convertir implícitamente el valor `flotador 'en un' doble '. No se necesita casting. Java maneja la conversión sin problemas.
Si tuviera que realizar operaciones aritméticas que involucraban `float` y` double ', el `float` se promocionaría automáticamente a` doble' antes del cálculo.
Si bien * puede * lanzarlo explícitamente usando `(doble) myfloat`, es redundante porque la conversión implícita ya está manejada de manera correcta y eficiente por el compilador Java:
`` `Java
doble myDoubleExplicit =(doble) myfloat; // explícito, pero innecesario
`` `` ``
En casi todos los casos, se prefiere la conversión implícita para una mejor legibilidad y concisión. El elenco explícito solo puede ser útil en situaciones en las que desea hacer que la conversión sea muy explícita para la legibilidad en un código complejo o para enfatizar que es consciente de la posible pérdida de precisión (aunque en este caso de flotación a doble es mínimo en comparación con otras conversiones).