📅  最后修改于: 2023-12-03 15:25:19.039000             🧑  作者: Mango
在Java中,有时候需要将数字进行四舍五入,这时候可以使用Java中内置的Math类来实现。Math类提供了两个方法可以用来进行数字的四舍五入:round()和ceil()。
round()方法可以将一个float或double类型的数字四舍五入为最接近的整数。若小数点后的数字小于0.5,则向下取整;若小数点后的数字大于等于0.5,则向上取整。
double num = 3.14159265359;
double roundedNum = Math.round(num * 100) / 100.0;
System.out.println(roundedNum);
该程序会输出 3.14
,因为将 num
乘以100后四舍五入得到 314
,再除以100.0得到 3.14
。
ceil()方法可以将一个float或double类型的数字向上取整为最接近的整数。
double num = 3.14159265359;
double ceilNum = Math.ceil(num * 100) / 100.0;
System.out.println(ceilNum);
该程序会输出 3.15
,因为将 num
乘以100后向上取整得到 315
,再除以100.0得到 3.15
。
若想将数字四舍五入到 n 个小数位,只需要将上述程序中 100
和 100.0
替换成 10^n
和 10.0^n
即可。
double num = 3.14159265359;
int n = 3;
double roundedNum = Math.round(num * Math.pow(10, n)) / Math.pow(10.0, n);
System.out.println(roundedNum);
该程序会输出 3.142
,因为将 num
乘以1000后四舍五入得到 3142
,再除以1000.0得到 3.142
。