Java

【Java】BigDecimalのdivideで落ちる時の対処法

Androidで電卓アプリを作成している時に起きたことです。

divideで割り算を行ったときに、
なぜか落ちてしまっていました。

少し調べていると、
計算結果が循環小数になると発生する現状みたいです。

参考サイト
http://d.hatena.ne.jp/lohlan/20101210/1291983569

下記コードで修正しました。

// 四捨五入して3桁になるようにしてます。
result = formula1.divide(formula2,  3, BigDecimal.ROUND_HALF_UP);

下記画像は、電卓アプリで上記コード使用した時の画像です。
計算式は、1÷3で計算してます。

次回作るときには気をつけようと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です