Необходимо вычесть процент от финансовой величины

необходимо вычесть процент от финансовой величины, которая сохранена в int (эффектив джава, стр. 303) , будет ли хорошей идеей этот процент вводить в float и производить вычисление result = finVal - (finVal * procent / 100) ? Целесообразно ли использовать в вычислениях с финансовыми величинами число с плавающей точкой, которое отражает проценты? Если нет, то как лучше это осуществить?


Ответы (1 шт):

Автор решения: Aziz Umarov

Там же написано: "Типы float и double не подходят для денежных расчётов,".

Правильный путь решения задачи заключается в том, чтобы применять для денежных расчётов типы BigDecimal, int или long. (эффектив джава, стр. 304)

→ Ссылка