int n = 4;
String num = "1.12345";
BigDecimal decimal = new BigDecimal(num);
System.out.println("原数据"+decimal);
BigDecimal setScale = decimal.setScale(n,BigDecimal.ROUND_DOWN);
System.out.println("格式化"+setScale);
setScale 方法可以指定保留的小数位数 和 舍位方式;本代码使用的是向下取舍的方式,因为金钱不能使用四舍五入的方式;bigdecimal支持百亿以上的数字,所以比dubble好用很多
执行结果
原数据1.12345
格式化1.1234