Closed2
JavaでBigDecimalを使うときメモ
BigDecimalで小数点以下切り捨てしたい
Javaバージョン
生成
// 文字列を渡す
BigDecimal bBar = new BigDecimal("1000");
// BigDescimal.valueOfを使う
BigDecimal bFoo = BigDecimal.valueOf(1000);
切り捨てしたい
BigDecimal#setScaleでスケールを0、RoundingMode.DOWNに設定する。
※スケールは小数点以下の桁数のこと
BigDecimal bBar = new BigDecimal("123.456");
bBar.setScale(0, RoundingMode.DOWN);
System.out.println(bBar);
文字列にする
toString()ではなく、toPlainString()を使う。
toString()の場合、指数表示になる場合がある
文字列にするとき、スケールが考慮されるので小数点以下が表示されてしまう
その場合は、BigDecimal#stripTrailingZerosを使う
参考資料
このスクラップは2021/11/22にクローズされました