• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:androidの開発について)

BigDecimalクラスを使ってandroidの開発で小さな数値を扱う方法は?

このQ&Aのポイント
  • JAVA初心者が趣味でandroidアプリの開発をしていますが、BigDecimalクラスを使って小さな数値を正確に扱う方法について困っています。
  • 掛け算では処理できるが、BigDecimalクラスを使った除算の処理でエラーが発生しています。
  • どうにかBigDecimalクラスを使って小さな数値の除算を処理する方法はないでしょうか?よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • teketon
  • ベストアンサー率65% (141/215)
回答No.1

> a12 = 0E-32 (BigDecimal型) > all = 0E-33 (BigDecimal型) Androidを使ったことは無いですが、これは両方共ゼロですよね?(0の10^-32、0の10^-33) > BigDecimal a12 = new BigDecimal(0).setScale(32); > BigDecimal all = new BigDecimal(0).setScale(33); ならば、0で割ることはできないのでdivideできないです。

patio153000
質問者

お礼

ありがとうございます。無事に解決できました。

その他の回答 (2)

  • wormhole
  • ベストアンサー率28% (1626/5665)
回答No.3

>java.lang.ArithmeticException: Division by zeroと書いています。 メッセージは英語ですけど尻込みしないで読んでみてください。 何て書いてあるのかわかりますか? >wormholeさんの言う通り0/0で計算処理できないということですかね? 私ではなくtaketonさんです。 taketonさんのいわれたとおりなのかどうかは上に書いたようにエラーメッセージを読めばわかります。

patio153000
質問者

お礼

無事に解決できました。お手数おかけして申し訳ございませんでした

patio153000
質問者

補足

何度も申し訳ございません。 java.lang.ArithmeticException: Division by zero 割り算の数値が0になっているので除外する。 taketonさんの言われたとおりだと思います。

  • wormhole
  • ベストアンサー率28% (1626/5665)
回答No.2

>エラーが出てしまいます。 「エラー」の一言で済まさずに、どのようなエラーが起きたのか メッセージが出力されているならそれもそのまま書きましょう。 それが解決の糸口になるんですから。

patio153000
質問者

補足

分かりにくい説明で申し訳ございません。 LogCatでみると java.lang.ArithmeticException: Division by zeroと書いています。 エラー箇所はBigDecimal x = a12.divide(all, 3, BigDecimal.ROUND_UP );の所です。 wormholeさんの言う通り0/0で計算処理できないということですかね?