Java7 Double.toString () возвращает 0,005 / Java6 это 0,0050
Я обновляюсь с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
Вывод был сохранен во многих справочных файлах и сравнен сравнением строк - мне нужно исправить сравнение, но мне интересно узнать больше подробностей об этом изменении. Авторитетный ответ о том, почему это изменение получит награду.