1、Math概述
Java的Math类封装了很多与数学有关的属性和方法。
2、Math常用方法
2.1、常用属性
public static final Double E = 2.7182818284590452354
public static final Double PI = 3.14159265358979323846
代码语言:javascript复制public class MathDemo01 {
public static void main(String[] args) {
System.out.println(Math.E);
System.out.println(Math.PI);
}
}
运行结果:
2.2、算术计算
public static long abs(double x):传回 x 的绝对值。X也可int long float
public static long pow(double x,double y):传回x的y次幂值
public static long sqrt(double x): 传回x开平方值
public static long max(double x,double y):传回x、y较大数
public static long min(double x,double y):传回x、y较小数
代码语言:javascript复制public class MathDemo02 {
public static void main(String[] args) {
/**
*Math.sqrt()//计算平方根
*Math.pow(a, b)//计算a的b次方
*Math.max( , );//计算最大值
*Math.min( , );//计算最小值
*/
System.out.println(Math.sqrt(16)); //4.0
System.out.println(Math.pow(3,2)); //9.0
System.out.println(Math.max(2.3,4.5));//4.5
System.out.println(Math.min(2.3,4.5));//2.3
/**
* abs求绝对值
*/
System.out.println(Math.abs(-10.4)); //10.4
System.out.println(Math.abs(10.1)); //10.1
}
}
运行结果:
2.3、进位计算
public static long floor(double x):传回不大于x的最大整数值 ,向下取整
public static long ceil(double x):传回不小于x的最小整数值,向上取整
public static long round(double x):传回x的四舍五入值
代码语言:javascript复制public class MathDemo03 {
public static void main(String[] args) {
//ceil天花板的意思,就是返回大的值
System.out.println(Math.ceil(-10.1)); //-10.0
System.out.println(Math.ceil(10.7)); //11.0
System.out.println(Math.ceil(-0.7)); //-0.0
System.out.println(Math.ceil(0.0)); //0.0
System.out.println(Math.ceil(-0.0)); //-0.0
System.out.println(Math.ceil(-1.7)); //-1.0
// floor地板的意思,就是返回小的值
System.out.println(Math.floor(-10.1)); //-11.0
System.out.println(Math.floor(10.7)); //10.0
System.out.println(Math.floor(-0.7)); //-1.0
System.out.println(Math.floor(0.0)); //0.0
System.out.println(Math.floor(-0.0)); //-0.0
// round 四舍五入,float时返回int值,double时返回long值
System.out.println(Math.round(10.1)); //10
System.out.println(Math.round(10.7)); //11
System.out.println(Math.round(10.5)); //11
System.out.println(Math.round(10.51)); //11
System.out.println(Math.round(-10.5)); //-10
System.out.println(Math.round(-10.51)); //-11
System.out.println(Math.round(-10.6)); //-11
System.out.println(Math.round(-10.2)); //-10
}
}
运行结果:
2.4、随机数
public static long random():传回随机数值,产生一个0-1之间的随机数(不包括0和1)
代码语言:javascript复制public class MathDemo04 {
public static void main(String[] args) {
//random 取得一个大于或者等于0.0小于不等于1.0的随机数
System.out.println(Math.random()); //小于1大于0的double类型的数
System.out.println(Math.random()*2);//大于0小于2的double类型的数
System.out.println(Math.random()*2 1);//大于1小于3的double类型的数
}
}
运行结果:
2.5、其他
public static long exp(double x):传回相当于e^x
public static long log(double x):传回x的自然对数函数值
public static long rint(double x):传回最接近x的整数值
public static long toDegrees(double angrad):传回将angrad径度转换成角度
public static long toRadians(double angdeg): 传回将angdeg角度转换成径度
public static long sin(double x): 传回x径度的正弦函数值
public static long cos(double x):传回x径度的余弦函数值
public static long tan(double x): 传回x径度的正切函数值
public static long asin(double x):传回x值的反正弦函数值。
public static long acos(double x):传回x值的反余弦函数值。
public static long atan(double x):传回x值的反正切函数值。
public static long atan2(double x, double y):传回极坐标(polar)的θ值