BigDecimalの値保持について BigDecimalから値の抽出 誤った表記変換方法 正しい文字列を取得する方法 まとめ お金の計算など正確にJavaで計算をするうえで欠かせないBigDecimalですが、 一部JDKバージョンで挙動に変更が入っていました。 この改修により問題に直面してしまったため備忘録がてら挙動をまとめることにしました。 BigDecimalの値保持について まず、本題に入る前にBigDecimalはどのように値を保持しているかを見てみましょう。 BigDecimalは以下の要素を保持しています。 intCompact 数値の仮数部を保持する intVal BigDecimalのスケーリングされていない値 precision 保持している仮数部の桁数 scale 少数のスケール では実際に見てみましょう。 BigDecimal bigDecimal1 = new