Java7 Double.toString () devuelve 0.005 / java6 es 0.0050
Estoy actualizando desdeJDK6 a JDK7. El siguiente código de demostración muestra un cambio menor enDouble.toString()
public class StringDemo
{
public static void main(String[] args)
{
System.out.println(Double.toString(.0005));
System.out.println(Double.toString(.005)); //different string
System.out.println(Double.toString(.05));
System.out.println(Double.toString(.5));
}
}
JRE6
5.0E-4
0.0050
0.05
0.5
JRE7
Estoy buscando cualquier documentación relacionada con el cambio anterior. La página de compatibilidad no lo cubre.
5.0E-4
0.005 //changed.
0.05
0.5
La salida se guardó en muchos archivos de referencia y se comparó por comparación de cadenas. Necesito corregir la comparación, pero tengo curiosidad por saber más detalles sobre este cambio. Respuesta autoritaria sobre por qué este cambio tendrá recompensa.