保留小数后面任意位数,java,BigDecimal实现

double num = 3.1415926572358452;
BigDecimal bigDecimal = new BigDecimal(num);

//保留四位小数,不会四舍五入
double v1 = bigDecimal.setScale(4, RoundingMode.DOWN).doubleValue();
System.out.println(v1);//31415

//保留四位会四舍五入
double v2 = bigDecimal.setScale(4, RoundingMode.HALF_UP).doubleValue();
System.out.println(v2);//3.1416

你可能感兴趣的:(保留小数后面任意位数,java,BigDecimal实现)