Java中的常用数学工具类和方法
Java 中提供了丰富的数学相关工具类和方法,主要集中在 java.lang.Math
类中,以下是常用的数学常数和方法总结:
一、常用数学常数(Math
类的静态常量)
-
Math.PI
:圆周率 π(约等于 3.141592653589793)double circleArea = Math.PI * r * r; // 计算圆面积
-
Math.E
:自然常数 e(约等于 2.718281828459045)double exponential = Math.pow(Math.E, 2); // e² ≈ 7.389
二、常用数学方法
1. 绝对值
Math.abs(x)
:返回x
的绝对值(支持int
、long
、float
、double
类型)Math.abs(-5); // 5(int) Math.abs(-3.14); // 3.14(double)
2. 取整操作
-
Math.ceil(x)
:向上取整(返回大于等于x
的最小整数,结果为double
)Math.ceil(3.2); // 4.0 Math.ceil(-3.2); // -3.0
-
Math.floor(x)
:向下取整(返回小于等于x
的最大整数,结果为double
)Math.floor(3.8); // 3.0 Math.floor(-3.8); // -4.0
-
Math.round(x)
:四舍五入(x
为float
时返回int
,x
为double
时返回long
)Math.round(3.2); // 3(int) Math.round(3.8); // 4(int)
3. 幂运算与开方
-
Math.pow(a, b)
:计算a
的b
次方(a^b
)Math.pow(2, 3); // 8.0(2³) Math.pow(10, -2); // 0.01(10⁻²)
-
Math.sqrt(x)
:计算x
的平方根(x ≥ 0
)Math.sqrt(16); // 4.0 Math.sqrt(2); // 约1.4142
-
Math.cbrt(x)
:计算x
的立方根Math.cbrt(8); // 2.0 Math.cbrt(-27); // -3.0
4. 三角函数(参数为弧度)
Math.sin(rad)
:正弦函数Math.cos(rad)
:余弦函数Math.tan(rad)
:正切函数Math.asin(x)
:反正弦(返回弧度,x ∈ [-1, 1]
)Math.acos(x)
:反余弦(返回弧度,x ∈ [-1, 1]
)double rad = Math.PI / 6; // 30度(π/6弧度) Math.sin(rad); // 0.5(sin30°) Math.cos(rad); // 约0.866(cos30°)
5. 指数与对数
-
Math.exp(x)
:计算e^x
(自然指数)Math.exp(1); // 约2.718(e¹)
-
Math.log(x)
:计算自然对数(lnx
,x > 0
) -
Math.log10(x)
:计算以10为底的对数(lgx
,x > 0
)Math.log(Math.E); // 1.0(lne = 1) Math.log10(100); // 2.0(lg100 = 2)
6. 最值
Math.max(a, b)
:返回a
和b
中的最大值(支持多种数值类型)Math.min(a, b)
:返回a
和b
中的最小值(支持多种数值类型)Math.max(5, 10); // 10 Math.min(3.2, 2.8); // 2.8
7. 随机数
Math.random()
:返回[0.0, 1.0)
之间的随机浮点数// 生成 [1, 100] 之间的随机整数 int randomNum = (int)(Math.random() * 100) + 1;
三、注意事项
Math
类中的方法均为静态方法,直接通过Math.方法名()
调用,无需创建对象。- 三角函数的参数为弧度,如需使用角度,需先转换(弧度 = 角度 × π / 180)。
- 涉及精度敏感的场景(如金融计算),建议使用
BigDecimal
类,避免浮点数误差。
这些方法覆盖了大部分基础数学运算场景,在算法题、数值计算等场景中非常常用。