Just a suggestion here, not binding at all. It might be better to use BigDecimal instead of double or float. Most real-world business rules involve comparisons that take tolerance of floating point errors into account.