math方法 java_Java中Math类常用方法

Math类是一个包含了很多数学常量与计算方法的类,里面的方法全是静态方法。Math类位于java.lang包下,一般能够自动导入。有兴趣的话可以查看官方的文档:https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html , 这里我将其整理如下:

Java中Math类常用方法

数学常量:常用方法:求随机数求绝对值求最大值求最小值取整四舍五入最接近的整数三角计算反三角计算开方计算对数计算乘方计算

不常用方法:符号函数精确计算角度转换坐标转换其他

数学常量:

static double E;     //自然对数的基数:e

static double PI;    //圆周率:π

常用方法:

求随机数

static double random();   //返回一个大于等于0.0且小于1.0的double值。

求绝对值

static double abs(double a);

static float abs(float a);

static int abs(int a);

static long    abs(long a);

求最大值

static double max(double a, double b);

static float max(float a, float b);

static int max(int a, int b);

static long    max(long a, long b);

求最小值

static double min(double a, double b);

static float min(float a, float b);

static int    min(int a, int b);

static long    min(long a, long b);

取整

static double ceil(double a);     //向上取整:返回大于等于参数的最小整数值。

static double floor(double a);    //向下取整:返回小于等于参数的最大整数值。

四舍五入

static long    round(double a);

static int round(float a);

最接近的整数

static double rint(double a);    //返回最接近参数的整数。

三角计算

static double sin(double a);     //正弦函数

static double cos(double a);     //余弦函数

static double tan(double a);     //正切函数

static double sinh(double x);    //双曲正弦函数

static double cosh(double x);    //双曲余弦函数

static double tanh(double x);    //双曲正切函数

反三角计算

static double acos(double a);   //反余弦函数,返回的角度在0.0到pi的范围内。

static double asin(double a);   //反正弦函数; 返回的角度在-pi/2到pi/2的范围内。

static double atan(double a);   //反正切函数; 返回的角度在-pi/2到pi/2的范围内。

开方计算

static double sqrt(double a);    //平方根。

static double cbrt(double a);    //立方根。

static double hypot(double x, double y);    //返回sqrt(x^2 + y^2)。

对数计算

static double log(double a);      //以自然常数e为底的对数。

static double log10(double a);    //以10为底的对数。

static double log1p(double x);    //返回 x+1 的自然对数。

乘方计算

static double pow(double a, double b);    //幂函数:返回计算a的b次方。

static double exp(double a);    //返回自然底数e的参数次方。

static double expm1(double x);    //返回 exp(x)-1

不常用方法:

符号函数

static double signum(double d); //如果参数为零,则返回零;如果参数大于零,则返回1.0;如果参数小于零,则返回-1.0。

static float signum(float f); //如果参数为零则为零,如果参数大于零则为1.0f,如果参数小于零则为-1.0f。

精确计算

static int addExact(int x, int y);      //返回两参数的和,如果结果溢出,则抛出异常int。

static long    addExact(long x, long y);   //返回两参数的和,如果结果溢出a则抛出异常long。

static int multiplyExact(int x, int y);    //返回两参数的乘积,如果结果溢出则抛出异常int。

static long    multiplyExact(long x, long y);  //返回两参数的乘积,如果结果溢出a则抛出异常long。

static int subtractExact(int x, int y);      //返回两参数的差,如果结果溢出则抛出异常int。

static long    subtractExact(long x, long y);   //返回两参数的差,如果结果溢出a则抛出异常long。

static int negateExact(int a);         //返回参数的否定,如果结果溢出则抛出异常int。

static long    negateExact(long a);       //返回参数的否定,如果结果溢出a则抛出异常long。

static int decrementExact(int a);       //返回参数值减 1,如果结果溢出则抛出异常int。

static long    decrementExact(long a);     //返回参数值减 1,如果结果溢出a则抛出异常long。

static int incrementExact(int a);       //返回参数值加 1,如果结果溢出,则抛出异常int。

static long    incrementExact(long a);     //返回参数值加 1,如果结果溢出a则抛出异常long。

static int toIntExact(long value);    //返回long参数的值; 如果值溢出,则抛出异常int。

角度转换

static double toRadians(double angdeg);    //将以度为单位的角度转换为以弧度为单位测量的近似等效角度。

static double toDegrees(double angrad);   //将以弧度测量的角度转换为以度为单位测量的近似等效角度。

坐标转换

static double atan2(double y, double x);   //返回从直角坐标(x,y)到极坐标(r,theta)的转换的角度θ。

其他

static double copySign(double magnitude, double sign);   //返回带有sign符号的magnitude。

static float copySign(float magnitude, float sign);   //返回带有sign符号的magnitude。

static double scalb(double d, int scaleFactor);  //返回 d 乘以 2 的 scaleFactor次幂。

static float scalb(float f, int scaleFactor);    //返回 f 乘以 2 的 scaleFactor次幂。

static double nextAfter(double start, double direction);    //返回与第二个参数方向相邻的第一个参数的浮点数

static float nextAfter(float start, double direction);      //返回与第二个参数方向相邻的第一个参数的浮点数

static double nextDown(double d);      //返回与负无穷大方向相邻的 d 的浮点值

static float nextDown(float f);       //返回与负无穷大方向相邻的 f 的浮点值

static double nextUp(double d);       //返回与正无穷大方向相邻的 d 的浮点值

static float nextUp(float f);        返回与正无穷大方向相邻的 f 的浮点值

static int floorDiv(int x, int y);       //对x除以y的商向下取整。

static long    floorDiv(long x, long y);    //对x除以y的商向下取整。

static int floorMod(int x, int y);       //对x除以y的模向下取整。

static long    floorMod(long x, long y);    //对x除以y的模向下取整。

static double IEEEremainder(double f1, double f2);     //返回 f1 除以 f2 的余数。

static int getExponent(double d);     //返回参数的无偏指数。

static int getExponent(float f);      //返回参数的无偏指数。

static double ulp(double d);         //返回参数的ulp大小。

static float ulp(float f);        //返回参数的ulp大小。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值