//数字保留小数后三位并四舍五入 public static void main(String[] args) { double a=12.52675,b; /** * 先给数字a乘以1000,让要保留的位数变为个位方便后面取整 * +0.5是为了达到四舍五入的效果 */ b=a*1000+0.5; //将b取整把小数点后的数字都舍弃,这样就完成了四舍五入与保留三位有效位数的效果 int c=(int) b; //再让数字除以1000,还原回定义时的大小,即可得到要求的值,注意这里c要强转成浮点型所以×1000.这个.不能少。 double c1= c/1000.; //输出 System.out.println(c1); } }
输出结果:
12.527
Process finished with exit code 0
注意:这样的代码写法对定义的数字有要求如果在+0.5后刚好第三位数字为0,那么程序就会把最后一位的零抹掉,导致只有小数点后两位数与要求不符合。