Как правильно сравнивать double в java
4 года назад
Человек-Молекула
Ответы
При сравнении значений типа double
в Java
следует быть осторожным из-за того, что внутреннее представление чисел с плавающей точкой может быть не точным. Например, значения, которые должны быть равными, могут отличаться на очень малое значение.
Вместо использования операторов ==
или !=
для сравнения значений типа double
рекомендуется использовать методы класса Double
, такие как equals()
или compare()
, которые предоставляют более точный способ сравнения чисел с плавающей точкой.
Метод equals()
:
В этом примере мы сравниваем два значения типа double
, которые должны быть равными. Для сравнения используем метод equals()
, который возвращает true
, если значения равны, и false
в противном случае.
Для сравнения двух значений типа double
по их относительной близости друг к другу используйте метод compare()
:
Этот метод возвращает 0, если значения равны, 1, если первое значение больше второго, и -1, если первое значение меньше второго. Мы проверяем, равны ли значения, используя == 0
2 года назад
Иван Полежаев