Math.floor()、Math.ceil()和Math.round()都是对浮点数取整(floor和ceil返回不带小数的double,round返回long)
- floor字面意思为地板,返回的是小于或等于该数值的最大的整数
- ceil字面意思是天花板,返回的是大于或等于该值的最小的整数
- round就是我们常见的四舍五入,不再多说
直接看下demo及运行结果
public class Test4 {
public static void main(String[] args) {
System.out.println("Math.floor(1.0) = " + Math.floor(1.0));
System.out.println("Math.floor(1.4) = " + Math.floor(1.4));
System.out.println("Math.floor(1.5) = " + Math.floor(1.5));
System.out.println("Math.floor(1.6) = " + Math.floor(1.6));
System.out.println("Math.floor(-1.0) = " + Math.floor(-1.0));
System.out.println("Math.floor(-1.4) = " + Math.floor(-1.4));
System.out.println("Math.floor(-1.5) = " + Math.floor(-1.5));
System.out.println("Math.floor(-1.6) = " + Math.floor(-1.6));
System.out.println("Math.ceil(1.0) = " + Math.ceil(1.0));
System.out.println("Math.ceil(1.4) = " + Math.ceil(1.4));
System.out.println("Math.ceil(1.5) = " + Math.ceil(1.5));
System.out.println("Math.ceil(1.6) = " + Math.ceil(1.6));
System.out.println("Math.ceil(-1.0) = " + Math.ceil(-1.0));
System.out.println("Math.ceil(-1.4) = " + Math.ceil(-1.4));
System.out.println("Math.ceil(-1.5) = " + Math.ceil(-1.5));
System.out.println("Math.ceil(-1.6) = " + Math.ceil(-1.6));
System.out.println("Math.round(1.0) = " + Math.round(1.0));
System.out.println("Math.round(1.4) = " + Math.round(1.4));
System.out.println("Math.round(1.5) = " + Math.round(1.5));
System.out.println("Math.round(1.6) = " + Math.round(1.6));
System.out.println("Math.round(-1.0) = " + Math.round(-1.0));
System.out.println("Math.round(-1.4) = " + Math.round(-1.4));
System.out.println("Math.round(-1.5) = " + Math.round(-1.5));
System.out.println("Math.round(-1.6) = " + Math.round(-1.6));
}
}
运行结果
Math.floor(1.0) = 1.0
Math.floor(1.4) = 1.0
Math.floor(1.5) = 1.0
Math.floor(1.6) = 1.0
Math.floor(-1.0) = -1.0
Math.floor(-1.4) = -2.0
Math.floor(-1.5) = -2.0
Math.floor(-1.6) = -2.0
Math.ceil(1.0) = 1.0
Math.ceil(1.4) = 2.0
Math.ceil(1.5) = 2.0
Math.ceil(1.6) = 2.0
Math.ceil(-1.0) = -1.0
Math.ceil(-1.4) = -1.0
Math.ceil(-1.5) = -1.0
Math.ceil(-1.6) = -1.0
Math.round(1.0) = 1
Math.round(1.4) = 1
Math.round(1.5) = 2
Math.round(1.6) = 2
Math.round(-1.0) = -1
Math.round(-1.4) = -1
Math.round(-1.5) = -1
Math.round(-1.6) = -2
需要注意的是正负值处理后的结果
比如
Math.floor(1.5) = 1.0,Math.floor(-1.5) = -2.0
Math.ceil(1.5) = 2.0,Math.ceil(-1.5) = -1.0
Math.round(1.5) = 2,Math.round(-1.5) = -1