JAVA常用类之Math

简介:

在应用程序设计时,我们经常会用到一些数学函数进行计算,比如三角函数、指数等。在Java中提供了Math类方便我们进行数学计算。
Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。
与 StrictMath 类的某些数学方法不同,并非 Math 类所有等价函数的实现都定义为返回逐位相同的结果。此类在不需要严格重复的地方可以得到更好的执行。
默认情况下,很多 Math 方法仅调用 StrictMath 中的等价方法来完成它们的实现。

方法摘要

返回值 方法名 说明
static double abs(double a) 返回 double 值的绝对值
static float abs(float a) 返回 float 值的绝对值
static int abs(int a) 返回 int 值的绝对值
static long abs(long a) 返回 long 值的绝对值
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 atan2(double y, double x) 将矩形坐标 (x, y) 转换成极坐标 (r, theta),返回所得角 theta
static double cbrt(double a) 返回 double 值的立方根
static double ceil(double a) 返回最小的(最接近负无穷大)double 值,该值大于等于参数,并等于某个整数
static double copySign(double magnitude, double sign) 返回带有第二个浮点参数符号的第一个浮点参数。
static float copySign(float magnitude, float sign) 返回带有第二个浮点参数符号的第一个浮点参数。
static double cos(double a) 返回角的三角余弦
static double cosh(double x) 返回 double 值的双曲线余弦
static double exp(double a) 返回欧拉数 e 的 double 次幂的值
static double expm1(double x) 返回 ex -1
static double floor(double a) 返回最大的(最接近正无穷大)double 值,该值小于等于参数,并等于某个整数
static int getExponent(double d) 返回 double 表示形式中使用的无偏指数
static int getExponent(float f) 返回 float 表示形式中使用的无偏指数
static double hypot(double x, double y) 返回 sqrt(x2 +y2),没有中间溢出或下溢
static double IEEEremainder(double f1, double f2) 按照 IEEE 754 标准的规定,对两个参数进行余数运算
static double log(double a) 返回 double 值的自然对数(底数是 e)
static double log10(double a) 返回 double 值的底数为 10 的对数
static double log1p(double x) 返回参数与 1 之和的自然对数
static double max(double a, double b) 返回两个 double 值中较大的一个
static float max(float a, float b) 返回两个 float 值中较大的一个
static int max(int a, int b) 返回两个 int 值中较大的一个
static long max(long a, long b) 返回两个 long 值中较大的一个
static double min(double a, double b) 返回两个 double 值中较小的一个
static float min(float a, float b) 返回两个 float 值中较小的一个
static int min(int a, int b) 返回两个 int 值中较小的一个
static long min(long a, long b) 返回两个 long 值中较小的一个
static double nextAfter(double start, double direction) 返回第一个参数和第二个参数之间与第一个参数相邻的浮点数
static float nextAfter(float start, double direction) 返回第一个参数和第二个参数之间与第一个参数相邻的浮点数
static double nextUp(double d) 返回 d 和正无穷大之间与 d 相邻的浮点值
static float nextUp(float f) 返回 f 和正无穷大之间与 f 相邻的浮点值
static double pow(double a, double b) 返回第一个参数的第二个参数次幂的值
static double random() 返回带正号的 double 值,该值大于等于 0.0 且小于 1.0
static double rint(double a) 返回最接近参数并等于某一整数的 double 值
static long round(double a) 返回最接近参数的 long
static int round(float a) 返回最接近参数的 int
static double scalb(double d, int scaleFactor) 返回 d × 2scaleFactor,其舍入方式如同将一个正确舍入的浮点值乘以 double 值集合中的一个值
static float scalb(float f, int scaleFactor) 返回 f × 2scaleFactor,其舍入方式如同将一个正确舍入的浮点值乘以 float 值集合中的一个值
static double signum(double d) 返回参数的符号函数;如果参数为 0,则返回 0;如果参数大于 0,则返回 1.0;如果参数小于 0,则返回 -1.0
static float signum(float f) 返回参数的符号函数;如果参数为 0,则返回 0;如果参数大于 0,则返回 1.0;如果参数小于 0,则返回 -1.0
static double sin(double a) 返回角的三角正弦
static double sinh(double x) 返回 double 值的双曲线正弦
static double sqrt(double a) 返回正确舍入的 double 值的正平方根
static double tan(double a) 返回角的三角正切
static double tanh(double x) 返回 double 值的双曲线余弦
static double toDegrees(double angrad) 将用弧度表示的角转换为近似相等的用角度表示的角
static double toRadians(double angdeg) 将用角度表示的角转换为近似相等的用弧度表示的角
static double ulp(double d) 返回参数的 ulp 大小
static float ulp(float f) 返回参数的 ulp 大小

Math的使用比较简单,这里就不写例子了。

目录
相关文章
|
5天前
|
存储 安全 Java
java.util的Collections类
Collections 类位于 java.util 包下,提供了许多有用的对象和方法,来简化java中集合的创建、处理和多线程管理。掌握此类将非常有助于提升开发效率和维护代码的简洁性,同时对于程序的稳定性和安全性有大有帮助。
32 17
|
1天前
|
存储 Java 程序员
Java基础的灵魂——Object类方法详解(社招面试不踩坑)
本文介绍了Java中`Object`类的几个重要方法,包括`toString`、`equals`、`hashCode`、`finalize`、`clone`、`getClass`、`notify`和`wait`。这些方法是面试中的常考点,掌握它们有助于理解Java对象的行为和实现多线程编程。作者通过具体示例和应用场景,详细解析了每个方法的作用和重写技巧,帮助读者更好地应对面试和技术开发。
19 4
|
2天前
|
Java 编译器 开发者
Java异常处理的最佳实践,涵盖理解异常类体系、选择合适的异常类型、提供详细异常信息、合理使用try-catch和finally语句、使用try-with-resources、记录异常信息等方面
本文探讨了Java异常处理的最佳实践,涵盖理解异常类体系、选择合适的异常类型、提供详细异常信息、合理使用try-catch和finally语句、使用try-with-resources、记录异常信息等方面,帮助开发者提高代码质量和程序的健壮性。
8 2
|
6天前
|
存储 安全 Java
如何保证 Java 类文件的安全性?
Java类文件的安全性可以通过多种方式保障,如使用数字签名验证类文件的完整性和来源,利用安全管理器和安全策略限制类文件的权限,以及通过加密技术保护类文件在传输过程中的安全。
|
10天前
|
Java 数据格式 索引
使用 Java 字节码工具检查类文件完整性的原理是什么
Java字节码工具通过解析和分析类文件的字节码,检查其结构和内容是否符合Java虚拟机规范,确保类文件的完整性和合法性,防止恶意代码或损坏的类文件影响程序运行。
|
10天前
|
Java API Maven
如何使用 Java 字节码工具检查类文件的完整性
本文介绍如何利用Java字节码工具来检测类文件的完整性和有效性,确保类文件未被篡改或损坏,适用于开发和维护阶段的代码质量控制。
|
10天前
|
存储 Java 编译器
java wrapper是什么类
【10月更文挑战第16天】
18 3
|
13天前
|
Java 程序员 测试技术
Java|让 JUnit4 测试类自动注入 logger 和被测 Service
本文介绍如何通过自定义 IDEA 的 JUnit4 Test Class 模板,实现生成测试类时自动注入 logger 和被测 Service。
20 5
|
13天前
|
Java
在Java多线程编程中,实现Runnable接口通常优于继承Thread类
【10月更文挑战第20天】在Java多线程编程中,实现Runnable接口通常优于继承Thread类。原因包括:1) Java只支持单继承,实现接口不受此限制;2) Runnable接口便于代码复用和线程池管理;3) 分离任务与线程,提高灵活性。因此,实现Runnable接口是更佳选择。
27 2
|
13天前
|
Java
Java中多线程编程的基本概念和创建线程的两种主要方式:继承Thread类和实现Runnable接口
【10月更文挑战第20天】《JAVA多线程深度解析:线程的创建之路》介绍了Java中多线程编程的基本概念和创建线程的两种主要方式:继承Thread类和实现Runnable接口。文章详细讲解了每种方式的实现方法、优缺点及适用场景,帮助读者更好地理解和掌握多线程编程技术,为复杂任务的高效处理奠定基础。
26 2