Выделение дробной части из double

156
01 декабря 2017, 05:21

Я сделал по топорному,

double d= Double.valueOf("5.0596");
int i= (int) d; 
double d2= d- i; // дробная часть

как можно по другому сделать?

Answer 1

Как уже посоветовали, d%1 выполняет ровно то, что надо, наиболее синтаксически коротким методом. С другой стороны, не обязательно это самый дешёвый в вычислении метод; Ваш "топорный" метод в этом смысле может быть даже лучше; если важна скорость, то лучше сделать бенчмарк по сравнению с вычитанием целой части.

Учтите, что int может не вместить всех целых значений для double в тех пределах, где double представляет все целые числа. Для long такое есть хотя бы для диапазона, где шаг значений double равен 1 или меньше. И конверсия бо́льших значений работает так, что молча выдаёт соответствующее крайнее целое, так что результат надо проверять.

READ ALSO
Как правильно обратиться к методу в Java?

Как правильно обратиться к методу в Java?

Выбивает ошибку что метод не существует

191
Отправка email (java)

Отправка email (java)

Я пытаюсь отправить email с помощью следующего кода:

221
Как освободить MediaPlayer от ресурсов?

Как освободить MediaPlayer от ресурсов?

Открываю новый файл по клику на кнопке:

188
Android. Проверка версии приложения в Play Market

Android. Проверка версии приложения в Play Market

Доброго времени сутокСразу же извиняюсь за возможную кривизну вопроса

168