BigDecimalクラスの割り算を行うdivide()メソッドにて、 計算結果が循環小数になる場合 java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result. が発生するので注意が必要。 以下のようにまるめ処理を行う事で回避可能。 bigDecimal1.divide(bigDecimal2, 2, BigDecimal.ROUND_HALF_UP); ※この例は小数点1桁で四捨五入