Я обновляюсь от JDK6 до JDK7. Следующий код демонстрирует незначительное изменение в Double.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
Я ищу любую документацию, связанную с вышеуказанным изменением. Страница совместимости не распространяется на нее.
5.0E-4
0.005 //changed.
0.05
0.5
Выход был сохранен во многих файлах справки и сравнивается с помощью сравнения строк - мне нужно исправить сравнение, но любопытно узнать больше об этом изменении. Авторитетный ответ о том, почему это изменение получит награду.