Qiitaに記事を投稿しました!
→記事リンク
続きには簡潔に結論を書いています。
概要
小数第一位を切り上げるコードを書いたよ!
// 当然 1 になるよね!
BigDecimal.valueOf(1.000000000000001d).setScale(0, RoundingMode.UP);
なぜか2になったよ!!!
// 切り上げる前に第二位以下を切り捨てちゃおうね!
BigDecimal.valueOf(1.000000000000001d).setScale(1, RoundingMode.DOWN)
.setScale(0, RoundingMode.UP);