栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java常用math类

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java常用math类

目录

1.什么是Math类

2.Math类中常用方法

(1)三角函数方法

(2)指数函数方法

(3)取整方法

(4)min , max , abs 方法

(5)random方法

3.练习


1.什么是Math类

1.Math类是一个工具类,它的构造器被定义成private的,因此无法创造Math类的对象。Math类中所有的方法都是类方法,可以直接通过类名来调用他们。

2.使用时包含   import java.lang.Math;

3.在Math类中定义了PI和E两个double型常量,PI就是π的值,而E即e指数底的值,分别是:3.141592653589793和2.718281828459045。

4.Math类包含完成基本数学函数所需的方法。这些方法基本可以分为三类:

三角函数方法、指数函数方法和服务方法。

2.Math类中常用方法

(1)三角函数方法

1.Math.toDegrees

这个方法是将-π/2到π/2之间的弧度值转化为度,例如:Math.toDegrees(Math.PI/2)结果为90.0;

2.Math.toRadians

这个方法是将度转化为-π/2到π/2之间的弧度值,例如:Math.toRadians(30)结果为π/6;

3.Math.sin, Math.cos, Math.tan 

这三个方法是三角函数中的正弦、余弦和正切

4.Math.asin, Math.acos, Math.atan

这三个方法是三角函数中正弦、余弦和正切的反函数。

(2)指数函数方法

1.Math.exp(a)

获得以 e 为底 a 为指数的数

2.Math.log()和Math.log10()

是对数函数

3.Math.pow(a,b)

是以a为底b为指数的值

4.Math.sqrt()

是开根号

5.Math.cbrt()

开立方根

​
        System.out.println(Math.sqrt(16));  //4.0   
        System.out.println(Math.cbrt(8));  //2.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  

​

(3)取整方法

1.Math.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  

2.Math.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 

3.Math.rint()

四舍五入,返回类型为double

注意.5的时候会取偶数;

        System.out.println(Math.rint(10.1));  //10.0   
        System.out.println(Math.rint(10.7));  //11.0   
        System.out.println(Math.rint(11.5));  //12.0   
        System.out.println(Math.rint(10.5));  //10.0   
        System.out.println(Math.rint(10.51));  //11.0   
        System.out.println(Math.rint(-10.5));  //-10.0   
        System.out.println(Math.rint(-11.5));  //-12.0   
        System.out.println(Math.rint(-10.51)); //-11.0   
        System.out.println(Math.rint(-10.6));  //-11.0   
        System.out.println(Math.rint(-10.2));  //-10.0 

4.Math.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  

(4)min , max , abs 方法

1.Math.min( , )

取两者最小值

2.Math.max( , )

取两者最大值

3.Math.abs()

取绝对值

 System.out.println(Math.abs(-10.4));  //10.4   
 System.out.println(Math.abs(10.1));   //10.1 

(5)random方法

1.Math.random()

取得一个[0.0 ,1)左闭右开的随机数

        System.out.println(Math.random()); //大于0小于1的double类型的数  
        System.out.println(Math.random()*2);//大于0小于2的double类型的数  
        System.out.println(Math.random()*2+1);//大于1小于2的double类型的数

3.练习

import java.util.Scanner;
import java.lang.Math;

public class MathTest {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int a1 = sc.nextInt();//25
		int a2 = sc.nextInt();//27
		int a3 = sc.nextInt();//4
		int a4 = sc.nextInt();//3
		double a5 = sc.nextDouble();//3.5
		double a6 = sc.nextDouble();//5.5
		double a7 = sc.nextDouble();//-8.8
		double a8 = sc.nextDouble();//10.8
		double a9 = sc.nextDouble();//9.6
		double a10 = sc.nextDouble();//10.62
		double a11 = sc.nextDouble();//11.51
		
		System.out.println(Math.sqrt(a1));//5.0 25平方根
		System.out.println(Math.cbrt(a2));//3.0 27立方根
		System.out.println(Math.pow(a3,a4));//64.0  4的3次
		System.out.println(Math.max(a5,a6));//5.5  5.5 3.5最大
		System.out.println(Math.min(a5,a6));//3.5  5.5 3.5最小
		System.out.println(Math.abs(a7));//8.8   -8.8的绝对值
		System.out.println(Math.ceil(a8));//11.0  10.8的ceil值(返回大的整数)
		System.out.println(Math.floor(a9));//9.0  9.6的floor值(返回小的整数)
		System.out.println(Math.rint(a10));//11.0  10.62的rint值(四舍五入返回double)
		System.out.println(Math.round(a11));//12 11.51的round值(四舍五入返回int)
		
	}
}

​

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/839231.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号