Я ссылался на this Документация Oracle. При попытке выполнить следующее,Присвоение значения плавающего значения двойному значению
public static void main(String args[]){
float f = 1.1f;
double df = 1.1f;
System.out.println("f=" + f);
System.out.println("df=" + df);
f = 1.5f;
df = 1.5f;
System.out.println("f=" + f);
System.out.println("df=" + df);
}
Выход
f = 1.1
df = 1.100000023841858
f = 1.5
df = 1.5
Почему вторая строка вывода показывает приблизительное значение. Но не для четвертой линии. Как рассчитывается значение?
BTW '1.1f' - это« плавающий »литерал, назначая его двойному, может вводить в заблуждение. –
Первое, что просто не показывает вам, что оно имеет такое же приблизительное значение. Http://floating-point-gui.de/ – zapl
'' '' '' '' '' это '1.500000000000000', нули пропущены – mangusta