目录
1.1 概述
1.2 常用方法
❓面试题:为啥Math.round(-1.5)=-1?
1.1 概述
java.lang.Math
类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。类似这样的工具类,其所有方法均为静态方法,并且不会创建对象,调用起来非常简单。
1.2 常用方法
方法名 方法名 | 说明 | 补充 |
public static int abs(int a) | 返回参数的绝对值 | |
public static double ceil(double a) | 返回大于或等于参数的最小double值,等于一个整数 | ceil(天花板),向上取整 -1.5向上取整为-1 |
public static double floor(double a) | 返回小于或等于参数的最大double值,等于一个整数 | floor(地板),向下取整 -1.5向下取整为-2 |
public static int round(float a) | 按照四舍五入返回最接近参数的int | round(-1.5)=-1 |
🧀实例1(向上取整)
package Day1109;public class TestDemo01 {public static void main(Stringargs) {doubleTest_Data= {1,1.3,1.6,0,-1,-1.3,-1.6};for (int i = 0; i < Test_Data.length; i++) {System.out.println(Test_Data[i]+"的Math.ceil结果为:"+Math.ceil(Test_Data[i]));}}
}
结果:
🧀实例2(向下取整)
package day1211;public class testDemo03 {public static void main(String[] args) {double[] Test_Data= {1,1.3,1.5,1.6,0,-1,-1.3,-1.5,-1.6};for (int i = 0; i < Test_Data.length; i++) {System.out.println(Test_Data[i]+"的Math.floor结果为:"+Math.floor(Test_Data[i]));}}
}
结果
🧀实例3(四舍五入)
package day1211;public class testDemo03 {public static void main(String[] args) {double[] Test_Data= {1,1.3,1.5,1.6,0,-1,-1.3,-1.5,-1.6};for (int i = 0; i < Test_Data.length; i++) {System.out.println(Test_Data[i]+"的Math.round结果为:"+Math.round(Test_Data[i]));}}
}
结果:
❓面试题:为啥Math.round(-1.5)=-1?
四舍五入的算法:Math.floor(a+0.5) 加0.5然后向下取整
-1.5+0.5=-1,向下取整,所以还是-1
-1.6+0.5=-1.1,向下取整,所以是-2