百度站长,广州专业的免费建站,seo研究中心好客站,企业大全Java 中 Math 类的常用方法#xff0c;java.lang.Math 是 Java 提供的数学工具类#xff0c;包含了大量用于执行基本数学运算的静态方法#xff08;无需创建对象#xff0c;直接通过 Math.方法名() 调用#xff09;#xff0c;下面按功能分类讲解核心常用方法#xff1a…Java 中Math类的常用方法java.lang.Math是 Java 提供的数学工具类包含了大量用于执行基本数学运算的静态方法无需创建对象直接通过Math.方法名()调用下面按功能分类讲解核心常用方法一、基本算术运算1. 绝对值abs()返回任意数值类型的绝对值支持int、long、float、double四种类型。// int 类型绝对值 System.out.println(Math.abs(-10)); // 输出10 // double 类型绝对值 System.out.println(Math.abs(-3.14)); // 输出3.14 // long 类型绝对值 System.out.println(Math.abs(-10000000000L)); // 输出100000000002. 取整运算1向下取整floor(double a)返回小于等于参数a的最大整数向负无穷方向取整返回值为double类型。System.out.println(Math.floor(3.9)); // 输出3.0 System.out.println(Math.floor(-3.1)); // 输出-4.02向上取整ceil(double a)返回大于等于参数a的最小整数向正无穷方向取整返回值为double类型。System.out.println(Math.ceil(3.1)); // 输出4.0 System.out.println(Math.ceil(-3.9)); // 输出-3.03四舍五入round()按 “四舍五入” 规则取整支持两种类型long round(double a)对double类型取值返回long类型结果int round(float a)对float类型取值返回int类型结果。// double 类型四舍五入 System.out.println(Math.round(3.49)); // 输出3long 类型 System.out.println(Math.round(3.5)); // 输出4long 类型 // float 类型四舍五入 System.out.println(Math.round(2.3f)); // 输出2int 类型4就近取整银行家舍入法rint(double a)返回最接近参数a的整数若存在两个等距整数返回偶数返回值为double类型。System.out.println(Math.rint(3.5)); // 输出4.0与 3 和 4 等距返回偶数 4 System.out.println(Math.rint(4.5)); // 输出4.0与 4 和 5 等距返回偶数 4 System.out.println(Math.rint(3.2)); // 输出3.03. 取余运算IEEEremainder(double f1, double f2)返回两个double类型数值的余数遵循 IEEE 754 标准与%运算符略有差异通常场景下%更常用。System.out.println(Math.IEEEremainder(10, 3)); // 输出1.0 System.out.println(Math.IEEEremainder(10, -3)); // 输出1.0二、数值比较与极值1. 最大值max()返回两个同类型数值中的较大值支持int、long、float、double四种类型。System.out.println(Math.max(10, 20)); // 输出20int 类型 System.out.println(Math.max(3.14, 2.71)); // 输出3.14double 类型2. 最小值min()返回两个同类型数值中的较小值支持int、long、float、double四种类型。System.out.println(Math.min(10, 20)); // 输出10int 类型 System.out.println(Math.min(3.14, 2.71)); // 输出2.71double 类型3. 限制数值范围JDK 1.8clamp()将数值限制在min和max之间若数值小于min返回min大于max返回max否则返回自身支持int、long、float、double四种类型。System.out.println(Math.clamp(15, 10, 20)); // 输出15在范围内返回自身 System.out.println(Math.clamp(5, 10, 20)); // 输出10小于最小值返回 min System.out.println(Math.clamp(25, 10, 20)); // 输出20大于最大值返回 max三、幂运算与指数 / 对数运算1. 幂运算pow(double a, double b)返回a的b次方a^b两个参数均为double类型返回值为double类型。System.out.println(Math.pow(2, 3)); // 输出8.02的3次方 System.out.println(Math.pow(10, 2)); // 输出100.010的平方 System.out.println(Math.pow(4, 0.5)); // 输出2.04的平方根等价于 sqrt(4)2. 平方根sqrt(double a)返回参数a的算术平方根仅支持非负数值负数返回NaN返回值为double类型。System.out.println(Math.sqrt(16)); // 输出4.0 System.out.println(Math.sqrt(2)); // 输出1.4142135623730951 System.out.println(Math.sqrt(-1)); // 输出NaN非数字3. 立方根cbrt(double a)返回参数a的立方根支持正负数值返回值为double类型。System.out.println(Math.cbrt(8)); // 输出2.0 System.out.println(Math.cbrt(-8)); // 输出-2.0 System.out.println(Math.cbrt(27)); // 输出3.04. 自然指数e^xexp(double a)返回自然常数e约 2.71828的a次方返回值为double类型。System.out.println(Math.exp(1)); // 输出2.718281828459045e^1 System.out.println(Math.exp(2)); // 输出7.38905609893065e^25. 对数运算1自然对数ln xlog(double a)返回参数a的自然对数以e为底仅支持正数值返回值为double类型。System.out.println(Math.log(Math.E)); // 输出1.0ln e 1 System.out.println(Math.log(10)); // 输出2.3025850929940462常用对数log10 xlog10(double a)返回参数a的常用对数以 10 为底仅支持正数值返回值为double类型。System.out.println(Math.log10(10)); // 输出1.0 System.out.println(Math.log10(100)); // 输出2.0四、三角函数与反三角函数1. 基础三角函数参数为弧度值sin(double a)正弦函数cos(double a)余弦函数tan(double a)正切函数// 30度对应的弧度值Math.PI / 6 System.out.println(Math.sin(Math.PI / 6)); // 输出0.5正弦30度 // 60度对应的弧度值Math.PI / 3 System.out.println(Math.cos(Math.PI / 3)); // 输出0.5余弦60度 // 45度对应的弧度值Math.PI / 4 System.out.println(Math.tan(Math.PI / 4)); // 输出1.0正切45度2. 反三角函数返回值为弧度值asin(double a)反正弦函数返回值范围[-π/2, π/2]acos(double a)反余弦函数返回值范围[0, π]atan(double a)反正切函数返回值范围[-π/2, π/2]System.out.println(Math.asin(0.5)); // 输出0.5235987755982988对应30度即π/6 System.out.println(Math.acos(0.5)); // 输出1.0471975511965976对应60度即π/3 System.out.println(Math.atan(1.0)); // 输出0.7853981633974483对应45度即π/43. 角度与弧度转换toRadians(double angdeg)角度转换为弧度toDegrees(double angrad)弧度转换为角度// 角度转弧度 System.out.println(Math.toRadians(30)); // 输出0.5235987755982988π/6 // 弧度转角度 System.out.println(Math.toDegrees(Math.PI / 4)); // 输出45.0五、随机数生成1. 基础随机数random()返回一个[0.0, 1.0)区间内的随机double类型数值包含 0.0不包含 1.0。// 生成 10 个 [0.0, 1.0) 随机数 for (int i 0; i 10; i) { System.out.println(Math.random()); } // 生成 [min, max) 区间的随机整数示例[1, 100) int min 1; int max 100; int randomInt (int) (Math.random() * (max - min) min); System.out.println(1到99的随机整数 randomInt); // 生成 [min, max] 区间的随机整数示例[1, 100] int randomInt2 (int) (Math.random() * (max - min 1) min); System.out.println(1到100的随机整数 randomInt2);六、常量与其他常用方法1. 常用数学常量Math.PI圆周率π约等于 3.141592653589793Math.E自然常数e约等于 2.718281828459045System.out.println(圆周率 Math.PI); System.out.println(自然常数 Math.E);2. 符号函数signum(double a)返回数值的符号正数返回 1.0负数返回 -1.00 返回 0.0支持double和float类型。System.out.println(Math.signum(10.5)); // 输出1.0 System.out.println(Math.signum(-3.2)); // 输出-1.0 System.out.println(Math.signum(0)); // 输出0.03. 绝对值与符号结合copySign(double magnitude, double sign)返回第一个参数的绝对值并带有第二个参数的符号支持double和float类型。// 10.5 取绝对值带上 -3.2 的符号负号 System.out.println(Math.copySign(10.5, -3.2)); // 输出-10.5 // -3.2 取绝对值带上 10.5 的符号正号 System.out.println(Math.copySign(-3.2, 10.5)); // 输出3.2七、完整使用示例public class MathDemo { public static void main(String[] args) { // 1. 基本算术运算 System.out.println(绝对值 Math.abs(-15)); System.out.println(向下取整 Math.floor(4.7)); System.out.println(向上取整 Math.ceil(4.2)); System.out.println(四舍五入 Math.round(4.5)); // 2. 极值运算 System.out.println(最大值 Math.max(20, 30)); System.out.println(最小值 Math.min(20, 30)); System.out.println(范围限制 Math.clamp(25, 10, 20)); // 3. 幂运算与对数运算 System.out.println(2的4次方 Math.pow(2, 4)); System.out.println(16的平方根 Math.sqrt(16)); System.out.println(8的立方根 Math.cbrt(8)); System.out.println(以10为底100的对数 Math.log10(100)); // 4. 三角函数角度转弧度 double radian Math.toRadians(60); System.out.println(60度的正弦值 Math.sin(radian)); System.out.println(60度的余弦值 Math.cos(radian)); // 5. 随机数 int randomNum (int) (Math.random() * 100 1); System.out.println(1到100的随机整数 randomNum); // 6. 常量 System.out.println(圆周率 Math.PI); System.out.println(自然常数 Math.E); } }八、核心总结Math类是静态工具类所有方法均为静态方法直接通过Math.方法名()调用核心功能分类算术运算abs/floor/ceil/round、极值运算max/min/clamp、幂 / 指数 / 对数运算pow/sqrt/log、三角函数、随机数random注意事项三角函数参数为弧度值需通过toRadians()/toDegrees()进行角度与弧度转换random()生成[0.0,1.0)随机数需手动转换为指定区间的整数适用场景数值计算、数据处理、随机数生成、几何运算等需要数学计算的场景。