我在我的项目中使用双精度值,我希望始终显示前两位十进制数字,即使它们是零。我使用此函数进行舍入,如果我打印的值为 3.47233322,它(正确)打印 3.47。但是,例如,当我打印值 2 时,它会打印 2.0。
public static double round(double d) {
BigDecimal bd = new BigDecimal(d);
bd = bd.setScale(2, BigDecimal.ROUND_HALF_UP);
return bd.doubleValue();
}
我要打印 2.00!
有没有办法在不使用字符串的情况下做到这一点?
编辑:从你的回答(我感谢你)我知道我不清楚我在搜索什么(对此我很抱歉):我知道如何使用你的解决方案在数字后打印两位数建议...我想要的是直接将两位数存储在双精度值中!所以当我做这样的事情时System.out.println("" + d)
(其中 d 是我的值为 2 的双精度数),它会打印 2.00。
我开始认为没有办法做到这一点......对吧?再次感谢您的回答,如果您知道解决方案,请告诉我!