0

m_FOBST次の番号を含むプロパティがあります: 1.5776。ここで私はそれを丸めようとしています:

   this.m_FOBST.setScale(2, BigDecimal.ROUND_HALF_EVEN)

ただし、1.58を取得する必要があるときに、数値1.60を取得します。

誰でも理由を説明できますか?

4

1 に答える 1

4

BigDecimal不変です -setScale()メソッドによって返された値を使用していることを確認してください。

BigDecimal bd = new BigDecimal("1.5776");

bd = bd.setScale(2, BigDecimal.ROUND_HALF_EVEN);

この場合bd1.58

于 2013-05-09T14:58:35.893 に答える