una sola nota:
BigDecimal permette si di chiamare il metodo divide, ma in realtà come parametro ha almeno un BigDecimal (gli interi sono altre cose) e questo parametro rappresenta il divisore.

Significa che

Codice PHP:
BigDecimal dividendo

BigDecimal result dividendo.divide(new BigDecimal(intValue)); 
non puoi fare direttamente una divisione BigDecimal /int.
i confronti si fanno sempre tra bigdecimal (come ti ha detto Alex)
a riguardo un'occhiata alle
API la darei.

poi mi dici che ci fa un underscore tra le cifre??