Math数学工具类在java中如何使用?

一、Math数学工具类是什么?

在处理业务的时候,经常遇到一些有关数学方面的计算,特别是做测绘和监测业务时,显得出现的频率及其多, JDK提供了一个Math类,提供了一系列方法供我们使用。

Math类包含执行基本数字运算的方法,如基本指数,对数,平方根和三角函数。

与StrictMath类的一些数字方法不同,Math类的StrictMath所有Math都没有定义为返回比特位相同的结果。 这种放松允许在不需要严格再现性的情况下执行更好的实现。

二、使用步骤

引入库

java.lang.Math;默认导入的,不需要再手工导入,但是java.math.*;下面有一些数据类型,如果你用到的话,需要手动导入一些。

三、常见方法摘要

1.e和π

(1) static double E -----double值比其他任何一个都更接近e,自然对数的基数。
(2) static double PI -----double值比其他的更接近pi,圆周率。

2.其他常用的方法

(1) static double /int / float /long

abs(double a) 返回值为double的绝对值。

注:这里的数据类型可以是int、float、long值,返回值为对应数据类型的绝对值。

(2)static double

acos(double a)返回值的反余弦值;返回的角度在0.0到pi的范围内。

asin(double a) 返回值的正弦值;返回的角度在pi/2到pi/2的范围内。

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

atan2(double y,double x) 返回从直角坐标(转换角度theta x,y)为极坐标(R,θ-)。

(3)static int
addExact(int x, int y) 返回其参数的总和,如果结果溢出int,则抛出 int 。

static long
addExact(long x, long y) 返回其参数的总和,如果结果溢出long,则抛出 long 。

(4)static double
cbrt(double a) 返回 double值的多维数据集根。

ceil(double a) 返回大于或等于参数的最小(最接近负无穷大) double值,等于一个数学整数。

copySign(double magnitude, double sign) 使用第二个浮点参数的符号返回第一个浮点参数。

static float
copySign(float magnitude, float sign) 使用第二个浮点参数的符号返回第一个浮点参数。

(5)static double
cos(double a) 返回角度的三角余弦。

sin(double a) 返回角度的三角正弦。

tan(double a) 返回角度的三角正切。

(6) static double
cosh(double x) 返回的双曲余弦 double值。

sinh(double x) 返回的双曲正弦 double值。

tanh(double x) 返回的双曲正切 double值。

(7)static int
decrementExact(int a) 返回一个递减1的参数,如果结果溢出int,则 int 。

static long
decrementExact(long a) 将返回的参数递减1,如果结果溢出long,则 long 。

(8)static double
exp(double a) 返回欧拉的数字 e提高到一个 double价值。

expm1(double x) 返回 e x -1。

(9)static double
floor(double a) 返回小于或等于参数的最大(最接近正无穷大) double值,等于一个数学整数。

(10)static int
floorDiv(int x, int y) 返回小于或等于代数商的最大(最接近正无穷大) int值。

static long
floorDiv(long x, long y) 返回小于或等于代数商的最大(最接近正无穷大) long值。

static int
floorMod(int x, int y) 返回 int参数的底部模数。

static long
floorMod(long x, long y) 返回 long参数的底模数。

(11)static int
getExponent(double d) 返回a的表示中使用的无偏指数 double 。

getExponent(float f) 返回a的表示中使用的无偏指数 float 。

(12)static double
hypot(double x, double y) 返回sqrt( x 2 + y 2 ),没有中间溢出或下溢。

IEEEremainder(double f1, double f2) 根据IEEE 754标准计算两个参数的余数运算。

(13)static int
incrementExact(int a) 返回自变量1,如果结果溢出int,则 int 。

static long
incrementExact(long a) 返回一个增加1的参数,如果结果溢出long,则 long 。

(14)static double
log(double a) 返回的自然对数(以 e为底) double值。

log10(double a) 返回一个 double的基数10对数值。

log1p(double x) 返回参数和1的和的自然对数。

(15)static double
max(double a, double b) 返回两个 double值中的较大值。
min(double a, double b) 返回两个 double的较小值。

static float
max(float a, float b) 返回两个 float的较大值。
min(float a, float b) 返回两个 float的较小值。

static int
max(int a, int b) 返回两个 int值中的较大值。
min(int a, int b) 返回两个 int的较小值。

static long
max(long a, long b) 返回两个 long的较大值。
min(long a, long b) 返回两个 long的较小值。

(16)static int
multiplyExact(int x, int y) 返回参数的乘积,如果结果溢出int,则抛出 int 。

static long
multiplyExact(long x, long y) 返回参数的乘积,如果结果溢出long,则抛出 long 。

(17)static int
negateExact(int a) 返回参数的否定,如果结果溢出int,则 int 。

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

(18)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的浮点值

(19)static double
pow(double a, double b) 将第一个参数的值返回到第二个参数的幂。

random() 返回值为 double值为正号,大于等于 0.0 ,小于 1.0 。

rint(double a) 返回与参数最接近值的 double值,并且等于数学整数。

(20)static long
round(double a) 返回参数中最接近的 long ,其中 long四舍五入为正无穷大。

static int
round(float a) 返回参数中最接近的 int ,其中 int四舍五入为正无穷大。

(21)static double
scalb(double d, int scaleFactor) 返回 d 2 scaleFactor四舍五入,好像由单个正确四舍五入的浮点乘以双重值集合的成员执行。

static float
scalb(float f, int scaleFactor) 返回 f 2 scaleFactor四舍五入,就像一个正确圆形的浮点数乘以浮点值集合的成员一样。

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

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

(23)static double
sqrt(double a) 返回的正确舍入正平方根 double值。

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

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

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

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

static double
toRadians(double angdeg) 将以度为单位的角度转换为以弧度测量的大致相等的角度。

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

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

Math数学工具类在java中如何使用?相关推荐

  1. 第21天学习Java的笔记-数学工具类Arrays,Math

    27天! 数学工具类 1.1数组工具类Arrays package Demo2101;/* 注意事项:是Arrays进行调用,不是变量进行调用!!!* java.util.Arrays是一个与数组相关 ...

  2. #学习笔记#13_数学工具类Math

    数学工具类Math java.util.Math 类是数学相关的工具类,里面提供了大量的静态方法,完成与数学运算相关的操作 public static double abs(double num):获 ...

  3. [Google Guava] 2.3-强大的集合工具类:java.util.Collections中未包含的集合工具

    原文链接 译文链接 译者:沈义扬,校对:丁一 尚未完成: Queues, Tables工具类 任何对JDK集合框架有经验的程序员都熟悉和喜欢java.util.Collections包含的工具方法.G ...

  4. Java正则工具类从地址中提取省市区

    Java正则工具类从地址中提取省市区 最近有个需求,从一串地址中提取出省市区,然后开始寻找解决方案,最终通过网上一些正则,再加上自己改动的,貌似弄成一个比较匹配的工具类,其中代码如下,有需要的可以参考 ...

  5. java 工具类-去除字符串中特殊字符、全角转为半脚、获取字符串中姓名/电话、姓名重复后追加a.b.c...aa,ab..

    java 工具类-去除字符串中特殊字符.全角转为半脚.获取字符串中姓名/电话.姓名重复后追加a.b.c-aa,ab- public class NameUtil {/*** 姓名重复后追加a.b.c. ...

  6. UrlUtils工具类,Java URL工具类,Java URL链接工具类

    UrlUtils工具类,Java URL工具类,Java URL链接工具类 >>>>>>>>>>>>>>>&g ...

  7. java中的复合数据类型是什么_【填空题】类是Java中的一种重要的复合数据类型,是组成Java程序的基本要素。一个类的实现包括两部分:____和_____....

    [填空题]类是Java中的一种重要的复合数据类型,是组成Java程序的基本要素.一个类的实现包括两部分:____和_____. 更多相关问题 [名词解释] 观叶树木 [单选] 开花时有浓郁香气的树种是 ...

  8. java电脑类_计算机类在Java中的设计于实现码

    计算机类在Java中的设计于实现码 问题描述: 一台计算机是由主板.CPU.显卡.声卡等部件组成的,这些部件通过接口可以直接安插在主板的插槽上,也就是说只要将这些部件简单的安插在一起就可以成功组装出一 ...

  9. java int to hex_Java字符串转16 进制工具类Hex.java | 学步园

    Java 字符串转 16 进制工具类 Hex.java 实现 16进制 0xfecd .. 和 java 字符串之间的互转换! 如果做开发,通常用户登陆密码都会 mad5(salt + pwd) 然后 ...

最新文章

  1. 心酸科研路:3年前CVPR论文,仅被引用11次,如今成就黑洞照片!
  2. Django博客系统(详情页面展示)
  3. Android Studio 3.5 Canary 12 发布
  4. JDBC在getConnection之前为什么要调用Class.forName
  5. 插件、页面-在csdn写markdown,基于chrome插件-by小雨
  6. modelandview怎么在页面循环_新号段来啦!!!“靓号”怎么选?
  7. 64位 linux 32位连接器,32位汇编程序在64位Ubuntu上的汇编和连接
  8. flash源文件_Animate/FLASH如何将多个源文件合并
  9. 正则表达式收集(持久更新)
  10. 是自学前端还是培训学前端?
  11. VS如何定制自己的模板信息
  12. 图片怎样压缩到100KB以下?怎样压缩图片小于100KB?
  13. iOS开发之YYKit丰富的组件,如:YYText
  14. 调整计算机的设置怎么退出,英雄联盟怎么退出调电脑音量
  15. 测试网速_使用Speedtest CLI测试你的网速
  16. Java基础-----匿名对象
  17. 此情可待的伤感爱情日志分享:失去你的那一刻,我的世界不再光明
  18. win10定时开机(Win10定时开机关机)
  19. java.io.FileNotFoundException: /storage/emulated/0/Pictures/QQ/video.mp4: open failed: EACCES (Permi
  20. 解决小米远程管理下电脑出现ftp文件错误提示

热门文章

  1. java功夫熊猫冒险游戏_《功夫熊猫游戏》官方下载 单机功夫熊猫游戏免费版_SJ3G游戏中心...
  2. Mac Book系统时间校准
  3. php如修改登陆后连接地址,两种wordpress更换后台登录界面logo图标方法
  4. java ora 01002,ORA-01002 提取违反顺序
  5. 编码 unicode 及其在 javascript 中的使用
  6. 计量经济学及Stata应用 陈强 第七章异方差习题7.3
  7. GCN - Semi-Supervised Classification with Graph Convolutional Networks 用图卷积进行半监督节点分类 ICLR 2017
  8. awtk + scons资源/问题/调试
  9. 微信公众号文章排版中,去掉图片和图片之间的空白
  10. 重载java_方法重载