java常用API Math


Java的Math类提供了许多用于数学计算的常用API,这些API包括但不限于以下内容:

  1. abs:返回一个数的绝对值。
  2. ceil:返回大于或等于参数的最小double值,等于某个整数。
  3. floor:返回小于或等于参数的最大double值,等于某个整数。
  4. max:返回两个参数中较大的值。
  5. min:返回两个参数中较小的值。
  6. pow:返回第一个参数的第二个参数次方。
  7. sqrt:返回参数的平方根。
  8. random:返回一个随机数,取值范围为[0,1)。

示例代码:

double a = -2.5;
double b = 3.4;
int c = 5;
int d = -10;

double absA = Math.abs(a);
double ceilB = Math.ceil(b);
double floorA = Math.floor(a);
double maxCAndD = Math.max(c, d);
double minAAndB = Math.min(a, b);
double powC2 = Math.pow(c, 2);
double sqrtB = Math.sqrt(b);
double random = Math.random();

上述代码将返回以下结果:

absA = 2.5
ceilB = 4.0
floorA = -3.0
maxCAndD = 5
minAAndB = -2.5
powC2 = 25.0
sqrtB = 1.843908891458577
random = 0.8147236979815794

除了这些API外,Math类还提供了许多其他有用的数学函数,例如三角函数和指数函数。

以下是Math类提供的一些其他常用API:

  1. sin:返回给定角度的正弦值。
  2. cos:返回给定角度的余弦值。
  3. tan:返回给定角度的正切值。
  4. asin:返回给定角度的反正弦值。
  5. acos:返回给定角度的反余弦值。
  6. atan:返回给定角度的反正切值。
  7. exp:返回自然对数的指数,也就是e的x次方。
  8. log:返回给定double值的自然对数。
  9. log10:返回给定double值的以10为底的对数。
  10. toDegrees:将弧度转换为角度。
  11. toRadians:将角度转换为弧度。

示例代码:

double angle = Math.PI / 4; // 45度

double sinAngle = Math.sin(angle);
double cosAngle = Math.cos(angle);
double tanAngle = Math.tan(angle);
double asinAngle = Math.asin(sinAngle);
double acosAngle = Math.acos(cosAngle);
double atanAngle = Math.atan(tanAngle);
double expValue = Math.exp(2);
double logValue = Math.log(10);
double log10Value = Math.log10(100);
double degrees = Math.toDegrees(Math.PI / 2); // 90度
double radians = Math.toRadians(180); // π弧度

上述代码将返回以下结果:

sinAngle = 0.7071067811865475
cosAngle = 0.7071067811865476
tanAngle = 0.9999999999999999
asinAngle = 0.7853981633974483
acosAngle = 0.7853981633974484
atanAngle = 0.9999999999999999
expValue = 7.3890560989306495
logValue = 2.302585092994046
log10Value = 2.0
degrees = 90.0
radians = 3.141592653589793

Math类的API非常广泛,可用于各种数学计算,尤其在科学和工程领域中非常有用。

除了上述提到的常用API外,Math类还提供了许多其他API,包括:

  1. hypot:计算直角三角形的斜边长度。
  2. signum:返回参数的符号,如果参数为0,则返回0。
  3. atan2:将两个参数作为x和y坐标,返回从原点到点(x,y)的极角。
  4. cbrt:返回double值的立方根。
  5. floorDiv:返回两个参数的商,向下取整。
  6. floorMod:返回两个参数的模,向下取整。
  7. nextAfter:返回一个与参数最接近的浮点数,该浮点数大于参数。
  8. nextUp:返回比参数稍大的浮点数。
  9. ulp:返回参数的最小单位。
  10. getExponent:返回double值的二进制指数。

示例代码:

double side1 = 3;
double side2 = 4;

double hypotenuse = Math.hypot(side1, side2);
double sign1 = Math.signum(side1);
double sign2 = Math.signum(0);
double atan2Value = Math.atan2(side1, side2);
double cbrtValue = Math.cbrt(27);
int floorDivResult = Math.floorDiv(10, 3);
int floorModResult = Math.floorMod(10, 3);
double nextAfterResult = Math.nextAfter(3.0, 4.0);
double nextUpResult = Math.nextUp(2.0);
double ulpResult = Math.ulp(1.0);
int exponent = Math.getExponent(1024.0);

上述代码将返回以下结果:

hypotenuse = 5.0
sign1 = 1.0
sign2 = 0.0
atan2Value = 0.6435011087932844
cbrtValue = 3.0
floorDivResult = 3
floorModResult = 1
nextAfterResult = 3.0000000000000004
nextUpResult = 2.0000000000000004
ulpResult = 2.220446049250313E-16
exponent = 10

Math类提供的API非常丰富,可以满足各种数学计算的需求。


原文链接:codingdict.net