Java中的数学函数

    技术2022-07-14  70

    目录

    sqrt(平方根)、pow(幂运算)floorMod与% (求模,取余)三角函数

    在Math类中包含了各种各样的数学函数

    sqrt(平方根)、pow(幂运算)

    double x = 4; double y = Math.sqrt(x); System.out.println(y); // prints 2.0 double x = 2; double a = 2; double y = Math.pow(x,a); System.out.println(y); // prints 4.0

    注意:pow方法中x , a这两个参数都是double类型的参数,其返回结果也为double类型。

    floorMod与% (求模,取余)

    首先,%是求余的意思,而不是求模的意思。求模不完全等于求余数。

    遵守公式: a = b * c + r ; 其中 a 是被除数,b 是除数,c 是商,r是余数也可以是模。 c = a / b 且 |r| < |b| 于是得到: r = a - c*b;

    Java求余单位是 %

    Java中求模使用的是 Math.floorMod(被除数,除数)方法

    当a>0,b>0 则a%b >=0 且Math.floorMod(a,b) >=0

    当a<0,b<0, 则 被除数 -(除数*商),已知商的绝对值取最小的,也就是说 |被除数| > |除数 * 商|。 所以a%b <=0 且Math.floorMod(a,b) <=0

    当ab异号,则 a/b小于0,也就是商小于0,除数小于0 r 的值的正负取决于 |商*除数| 与 |被除数|的比较

    求模运算和求余运算在第一步不同: 取余运算在取c的值时,向 0 方向舍入; 而取模运算在计算c的值时,向负无穷方向舍入。

    当 a < 0, b > 0 时候 例: a= -7; b=4; a / b=-1.75 进行求余运算:c=-1 (向0方向舍入,向下取整) 进行求模运算:c=-2 (向负无穷方向舍入,向上取整) 根据公式:r = a - c*b 所以,最后的结果为: 求余:a%b=r= -3; 取模:Math.floorMod(a,b)= r = 1;

    当 a > 0, b < 0 时候 a=7; b=-4; 进行求余运算:c=-1 (向0方向舍入,向下取整) 进行求模运算:c=-2 (向负无穷方向舍入,向上取整) 求余:a%b=r= 3; 取模:Math.floorMod(a,b)= r = -1;

    总结

    当被除数和除数同号的时候,求余和取模得到的结果是相等的求余过程中: 余数的正负号取决于被除数,被除数为正则为正,被除数为负则为负求模过程中: 模的正负号取决于除数,除数为正则为正,除数为负责为负

    三角函数

    Math.sin(x) x为一个数值(弧度制为单位)

    Math.sin(0); // 0 Math.sin(Math.PI / 2); // 1

    Math.PI 表示的是 π 的近似值 Math.E 表示的是 e 的近似值

    其余的函数: Math.cos Math.tan Math.atan Math.atan2

    Processed: 0.009, SQL: 9