Java - StrictMath 類
簡介
Java StrictMath 類包含用於執行基本數值運算的方法,例如基本指數、對數、平方根和三角函式。
類宣告
以下是 java.lang.StrictMath 類的宣告:
public final class StrictStrictMath
extends Object
欄位
以下是 java.lang.StrictMath 類的欄位:
類方法
序號 |
方法及描述 |
1 |
static double abs(double a)
此方法返回雙精度值的絕對值。
|
2 |
static float abs(float a)
此方法返回浮點值的絕對值。
|
3 |
static int abs(int a)
此方法返回整數值的絕對值。
|
4 |
static long abs(long a)
此方法返回長整數值的絕對值。
|
5 |
static double acos(double a)
此方法返回值的反正弦;返回的角度範圍為 0.0 到 π。
|
6 |
static double asin(double a)
此方法返回值的反正弦;返回的角度範圍為 -π/2 到 π/2。
|
7 |
static double atan(double a)
此方法返回值的反正切;返回的角度範圍為 -π/2 到 π/2。
|
8 |
static double atan2(double y, double x)
此方法返回將直角座標 (x, y) 轉換為極座標 (r, θ) 時得到的角度 θ。
|
9 |
static double cbrt(double a)
此方法返回雙精度值的立方根。
|
10 |
static double ceil(double a)
此方法返回大於或等於引數且等於數學整數的最小(最接近負無窮大)雙精度值。
|
11 |
static double copySign(double magnitude, double sign)
此方法返回第一個浮點引數,並帶有第二個浮點引數的符號。
|
12 |
static float copySign(float magnitude, float sign)
此方法返回第一個浮點引數,並帶有第二個浮點引數的符號。
|
13 |
static double cos(double a)
此方法返回角度的三角餘弦。
|
14 |
static double cosh(double x)
此方法返回雙精度值的雙曲餘弦。
|
15 |
static double exp(double a)
此方法返回尤拉數 e 的雙精度值次冪。
|
16 |
static double expm1(double x)
此方法返回 ex -1。
|
17 |
static double floor(double a)
此方法返回小於或等於引數且等於數學整數的最大(最接近正無窮大)雙精度值。
|
18 |
static int getExponent(double d)
此方法返回用於表示雙精度值的無偏指數。
|
19 |
static int getExponent(float f)
此方法返回用於表示浮點值的無偏指數。
|
20 |
static double hypot(double x, double y)
此方法返回 sqrt(x2 +y2),避免中間溢位或下溢。
|
21 |
static double IEEEremainder(double f1, double f2)
此方法根據 IEEE 754 標準計算兩個引數的餘數運算。
|
22 |
static double log(double a)
此方法返回雙精度值的自然對數(以 e 為底)。
|
23 |
static double log10(double a)
此方法返回雙精度值的以 10 為底的對數。
|
24 |
static double log1p(double x)
此方法返回引數與 1 的和的自然對數。
|
25 |
static double max(double a, double b)
此方法返回兩個雙精度值中較大的一個。
|
26 |
static float max(float a, float b)
此方法返回兩個浮點值中較大的一個。
|
27 |
static int max(int a, int b)
此方法返回兩個整數值中較大的一個。
|
28 |
static long max(long a, long b)
此方法返回兩個長整數值中較大的一個。
|
29 |
static double min(double a, double b)
此方法返回兩個雙精度值中較小的一個。
|
30 |
static float min(float a, float b)
此方法返回兩個浮點值中較小的一個。
|
31 |
static int min(int a, int b)
此方法返回兩個整數值中較小的一個。
|
32 |
static long min(long a, long b)
此方法返回兩個長整數值中較小的一個。
|
33 |
static double nextAfter(double start, double direction)
此方法返回第一個引數在第二個引數方向上的相鄰浮點數。
|
34 |
static float nextAfter(float start, double direction)
此方法返回第一個引數在第二個引數方向上的相鄰浮點數。
|
35 |
static double nextUp(double d)
此方法返回 d 在正無窮大方向上的相鄰浮點值。
|
36 |
static float nextUp(float f)
此方法返回 f 在正無窮大方向上的相鄰浮點值。
|
37 |
static double pow(double a, double b)
此方法返回第一個引數的第二個引數次冪的值。
|
38 |
static double random()
此方法返回一個帶正號的雙精度值,大於或等於 0.0 且小於 1.0。
|
39 |
static double rint(double a)
此方法返回最接近引數且等於數學整數的雙精度值。
|
40 |
static long round(double a)
此方法返回最接近引數的長整數。
|
41 |
static int round(float a)
此方法返回最接近引數的整數。
|
42 |
static double scalb(double d, int scaleFactor)
此方法返回 d × 2scaleFactor,四捨五入為好像由單個正確四捨五入的浮點乘法運算為雙精度值集的成員執行。
|
43 |
static float scalb(float f, int scaleFactor)
此方法返回 f × 2scaleFactor,四捨五入為好像由單個正確四捨五入的浮點乘法運算為浮點值集的成員執行。
|
44 |
static double signum(double d)
此方法返回引數的符號函式;如果引數為零,則返回零;如果引數大於零,則返回 1.0;如果引數小於零,則返回 -1.0。
|
45 |
static float signum(float f)
此方法返回引數的符號函式;如果引數為零,則返回零;如果引數大於零,則返回 1.0f;如果引數小於零,則返回 -1.0f。
|
46 |
static double sin(double a)
此方法返回雙精度值的雙曲正弦。
|
47 |
static double sinh(double x)
此方法返回雙精度值的雙曲正弦。
|
48 |
static double sqrt(double a)
此方法返回雙精度值的正確四捨五入的正平方根。
|
49 |
static double tan(double a)
此方法返回角度的三角正切。
|
50 |
static double tanh(double x)
此方法返回雙精度值的雙曲正切。
|
51 |
static double toDegrees(double angrad)
此方法將以弧度為單位測量的角度轉換為近似等效的以度為單位測量的角度。
|
52 |
static double toRadians(double angdeg)
此方法將以度為單位測量的角度轉換為近似等效的以弧度為單位測量的角度。
|
53 |
static double ulp(double d)
此方法返回引數的 ulp 的大小。
|
54 |
static double ulp(float f)
此方法返回引數的 ulp 的大小。
|
繼承的方法
此類繼承自以下類的方法:
示例
以下示例演示了 StrictMath 類提供的一些重要方法的使用。
package com.tutorialspoint;
public class StrictStrictMathDemo {
public static void main(String[] args) {
// get two double numbers
double x = 60984.1;
double y = -497.99;
// get the natural logarithm for x
System.out.println("StrictStrictMath.log(" + x + ")=" + StrictStrictMath.log(x));
// get the natural logarithm for y
System.out.println("StrictStrictMath.log(" + y + ")=" + StrictStrictMath.log(y));
// get the max value
System.out.println("StrictStrictMath.max(" + x + ", y" + ")=" + StrictStrictMath.max(x,y));
// get the min value
System.out.println("StrictStrictMath.min(" + x + ", y" + ")=" + StrictStrictMath.min(x,y));
}
}
輸出
讓我們編譯並執行上述程式,這將產生以下結果:
StrictStrictMath.log(60984.1)=11.018368453441132
StrictStrictMath.log(-497.99)=NaN
StrictStrictMath.max(60984.1, y)=60984.1
StrictStrictMath.min(60984.1, y)=-497.99