Вход на сайт
float в java
1733 просмотров
Перейти к просмотру всей ветки
в ответ Murr 27.05.08 13:26
Странно, но следующий код работает тоже не так, как я ожидал.
double d1 = Double.MAX_VALUE;
double d2 = d1-0.1;
long lon1 = Double.doubleToLongBits(d1);
long lon2 = Double.doubleToLongBits(d2);
System.out.println(lon1 == lon2);
Последнее выражение возвращает TRUE. Я то думал, что раз битовые представления d1 и d2 отличаются, то это должно отразиться и на значениях lon1 и lon2.
double d1 = Double.MAX_VALUE;
double d2 = d1-0.1;
long lon1 = Double.doubleToLongBits(d1);
long lon2 = Double.doubleToLongBits(d2);
System.out.println(lon1 == lon2);
Последнее выражение возвращает TRUE. Я то думал, что раз битовые представления d1 и d2 отличаются, то это должно отразиться и на значениях lon1 и lon2.
http://denis-aristov.ucoz.com