JavaTM 2 Platform
Standard Ed. 6

java.lang
類別 StrictMath

java.lang.Object
  繼承者 java.lang.StrictMath

public final class StrictMath
extends Object

StrictMath 類別包含用於執行基本數學運算的方法,如初等指數、對數、平方根和三角函數。

為了確保 Java 程序的可移植性,此套件中的某些數學函數的定義需要與某些已發佈的演算法產生相同的結果。這些演算法可以從眾所周知的網路資源庫 netlibfdlibm(「Freely Distributable Math Library,免費發佈的數學資源庫」)套件的形式獲得。這些演算法都是用 C 程式語言編寫的,在使用所有遵循 Java 浮點演算法規則的浮點運算執行時也能夠被理解。

Java 數學資源庫是根據 fdlibm 5.3 版定義的。其中 fdlibm 使用「IEEE 754 核心函數」版本(位於名字以字母 e 開頭的檔案中)為一個函數提供了多個定義(如 acos)。需要 fdlibm 語義的方法有 sincostanasinacosatanexploglog10cbrtatan2powsinhcoshtanhhypotexpm1log1p

從以下版本開始:
1.3

欄位摘要
static double E
          比任何其他值都更接近 e(即自然對數的底數)的 double 值。
static double PI
          比任何其他值都更接近 pi(即圓的周長與直徑之比)的 double 值。
 
方法摘要
static double abs(double a)
          返回 double 值的絕對值。
static float abs(float a)
          返回 float 值的絕對值。
static int abs(int a)
          返回 int 值的絕對值。
static long abs(long a)
          返回 long 值的絕對值。
static double acos(double a)
          返回值的反餘弦;返回角的範圍在 0.0 到 pi 之間。
static double asin(double a)
          返回值的反正弦;返回角的範圍在 -pi/2 到 pi/2 之間。
static double atan(double a)
          返回值的反正切;返回角的範圍在 -pi/2 到 pi/2 之間。
static double atan2(double y, double x)
          將矩形坐標 (xy) 轉換成極坐標 (r, theta),並返回角 theta
static double cbrt(double a)
          返回 double 值的立方根。
static double ceil(double a)
          返回最小的(最接近負無窮大)double 值,該值大於等於參數,並且等於某個整數。
static double copySign(double magnitude, double sign)
          返回帶有第二個浮點參數符號的第一個浮點參數。
static float copySign(float magnitude, float sign)
          返回帶有第二個浮點參數符號的第一個浮點參數。
static double cos(double a)
          返回角的三角餘弦。
static double cosh(double x)
          返回 double 值的雙曲線餘弦。
static double exp(double a)
          返回歐拉數 edouble 次方的值。
static double expm1(double x)
          返回 ex -1。
static double floor(double a)
          返回最大的(最接近正無窮大)double 值,該值小於等於參數,並等於某個整數。
static int getExponent(double d)
          返回 double 表示形式中使用的無偏指數。
static int getExponent(float f)
          返回 float 表示形式中使用的無偏指數。
static double hypot(double x, double y)
          返回 sqrt(x2 +y2),沒有中間溢位或下溢。
static double IEEEremainder(double f1, double f2)
          按照 IEEE 754 標準的規定,對兩個參數進行餘數運算。
static double log(double a)
          返回 double 值的自然對數(底數為 e)。
static double log10(double a)
          返回 double 值的底數為 10 的對數。
static double log1p(double x)
          返回參數與 1 之和的自然對數。
static double max(double a, double b)
          返回兩個 double 值中較大的一個。
static float max(float a, float b)
          返回兩個 float 值中較大的一個。
static int max(int a, int b)
          返回兩個 int 值中較大的一個。
static long max(long a, long b)
          返回兩個 long 值中較大的一個。
static double min(double a, double b)
          返回兩個 double 值中較小的一個。
static float min(float a, float b)
          返回兩個 float 值中較小的一個。
static int min(int a, int b)
          返回兩個 int 值中較小的一個。
static long min(long a, long b)
          返回兩個 long 值中較小的一個。
static double nextAfter(double start, double direction)
          返回第一個參數和第二個參數之間與第一個參數相鄰的浮點數。
static float nextAfter(float start, double direction)
          返回第一個參數和第二個參數之間與第一個參數相鄰的浮點數。
static double nextUp(double d)
          返回 d 和正無窮大之間與 d 相鄰的浮點值。
static float nextUp(float f)
          返回 f 和正無窮大之間與 f 相鄰的浮點值。
static double pow(double a, double b)
          返回第一個參數的第二個參數次方的值。
static double random()
          返回帶有正號的 double 值,該值大於等於 0.0 且小於 1.0
static double rint(double a)
          返回最接近參數並等於某一整數的 double 值。
static long round(double a)
          返回最接近參數的 long
static int round(float a)
          返回最接近參數的 int
static double scalb(double d, int scaleFactor)
          返回 d × 2scaleFactor,其捨入方式如同將一個正確捨入的浮點值乘到 double 值集合中的一個值。
static float scalb(float f, int scaleFactor)
          返回 f × 2scaleFactor,其捨入方式如同將一個正確捨入的浮點值乘到 float 值集合中的一個值。
static double signum(double d)
          返回參數的符號函數;如果參數為 0,則返回 0;如果參數大於 0,則返回 1.0;如果參數小於 0,則返回 -1.0。
static float signum(float f)
          返回參數的符號函數;如果參數為 0,則返回 0;如果參數大於 0,則返回 1.0f;如果參數小於 0,則返回 -1.0f。
static double sin(double a)
          返回角的三角正弦。
static double sinh(double x)
          返回 double 值的雙曲線正弦。
static double sqrt(double a)
          返回正確捨入的 double 值的正平方根。
static double tan(double a)
          返回角的三角正切。
static double tanh(double x)
          返回 double 值的雙曲線正切。
static double toDegrees(double angrad)
          將用弧度表示的角轉換為近似相等的用角度表示的角。
static double toRadians(double angdeg)
          將用角度表示的角轉換為近似相等的用弧度表示的角。
static double ulp(double d)
          返回參數的 ulp 大小。
static float ulp(float f)
          返回參數的 ulp 大小。
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

欄位詳細資訊

E

public static final double E
比任何其他值都更接近 e(即自然對數的底數)的 double 值。

另請參見:
常數欄位值

PI

public static final double PI
比任何其他值都更接近 pi(即圓的周長與直徑之比)的 double 值。

另請參見:
常數欄位值
方法詳細資訊

sin

public static double sin(double a)
返回角的三角正弦。特殊情況如下:

參數:
a - 以弧度表示的角。
返回:
參數的正弦。

cos

public static double cos(double a)
返回角的三角餘弦。特殊情況如下:

參數:
a - 以弧度表示的角。
返回:
參數的餘弦。

tan

public static double tan(double a)
返回角的三角正切。特殊情況如下:

參數:
a - 以弧度表示的角。
返回:
參數的正切。

asin

public static double asin(double a)
返回值的反正弦;返回角的範圍在 -pi/2 到 pi/2 之間。特殊情況如下:

參數:
a - 要返回其反正弦的值。
返回:
參數的反正弦。

acos

public static double acos(double a)
返回值的反餘弦;返回角的範圍在 0.0 到 pi 之間。特殊情況如下:

參數:
a - 要返回其反餘弦的值。
返回:
參數的反餘弦。

atan

public static double atan(double a)
返回值的反正切;返回角的範圍在 -pi/2 到 pi/2 之間。特殊情況如下:

參數:
a - 要返回其反正切的值。
返回:
參數的反正切。

toRadians

public static double toRadians(double angdeg)
將用角度表示的角轉換為近似相等的用弧度表示的角。從角度到弧度的轉換通常是不精確的。

參數:
angdeg - 用角度表示的角。
返回:
angrad 用弧度表示的值。

toDegrees

public static double toDegrees(double angrad)
將用弧度表示的角轉換為近似相等的用角度表示的角。從弧度到角度的轉換通常是不精確的;使用者 應該期望 cos(toRadians(90.0))0.0 精確相等。

參數:
angrad - 用弧度表示的角。
返回:
angrad 用角度表示的值。

exp

public static double exp(double a)
返回歐拉數 edouble 次方的值。特殊情況如下:

參數:
a - e 的指數。
返回:
ea,其中 e 是自然對數的底數。

log

public static double log(double a)
返回 double 值的自然對數(底數為 e)。特殊情況如下:

參數:
a - 一個值。
返回:
ln a 的值,即 a 的自然對數。

log10

public static double log10(double a)
返回 double 值的底數為 10 的對數。特殊情況如下:

參數:
a - 一個值
返回:
a 的底數為 10 的對數。
從以下版本開始:
1.5

sqrt

public static double sqrt(double a)
返回正確捨入的 double 值的正平方根。特殊情況如下: 否則,結果為最接近該參數值實際數學平方根的 double 值。

參數:
a - 一個值。
返回:
a 的正平方根。

cbrt

public static double cbrt(double a)
返回 double 值的立方根。對於正有限值 xcbrt(-x) == -cbrt(x);也就是說,負值的立方根是該值數值的負立方根。特殊情況如下:

參數:
a - 一個值。
返回:
a 的立方根。
從以下版本開始:
1.5

IEEEremainder

public static double IEEEremainder(double f1,
                                   double f2)
按照 IEEE 754 標準的規定,對兩個參數進行餘數運算。餘數的算術值等於 f1 - f2 × n,其中 n 是最接近商 f1/f2 準確算術值的整數,如果兩個整數都同樣接近 f1/f2,那麼 n 是其中的偶數。如果餘數是 0,則它的符號與第一個參數的符號相同。特殊情況如下:

參數:
f1 - 被除數。
f2 - 除數。
返回:
f1 除以 f2 的餘數。

ceil

public static double ceil(double a)
返回最小的(最接近負無窮大)double 值,該值大於等於參數,並且等於某個整數。特殊情況如下: 注意,StrictMath.ceil(x) 的值與 -StrictMath.floor(-x) 的值完全一樣。

參數:
a - 一個值。
返回:
最小(最接近負無窮大)浮點值,該值大於等於參數,並且等於某個整數。

floor

public static double floor(double a)
返回最大的(最接近正無窮大)double 值,該值小於等於參數,並等於某個整數。特殊情況如下:

參數:
a - 一個值。
返回:
最大(最接近正無窮大)浮點值,該值小於等於該參數,並且等於某個整數。

rint

public static double rint(double a)
返回最接近參數並等於某一整數的 double 值。如果兩個同為整數的 double 值都同樣接近,那麼結果取偶數。特殊情況如下:

參數:
a - 一個值。
返回:
最接近 a 的整數浮點值。

atan2

public static double atan2(double y,
                           double x)
將矩形坐標 (xy) 轉換成極坐標 (r, theta),並返回角 theta。該方法通過計算 y/x 的反正切值來計算相角 theta,範圍為從 -pipi。特殊情況如下:

參數:
y - 縱坐標
x - 橫坐標
返回:
與笛卡兒坐標中點 (xy) 對應的極坐標中點 (rtheta) 的 theta 元件。

pow

public static double pow(double a,
                         double b)
返回第一個參數的第二個參數次方的值。特殊情況如下:

(在前面的描述中,當且僅當浮點數為有限值並且是方法 ceil 的定點數,或者是方法 floor 的定點數時,才可以認為浮點值是整數。當且僅當將某個單參數方法應用到某個值的結果等於該值時,該值才是這個方法的定點值。)

參數:
a - 底數。
b - 指數。
返回:
ab

round

public static int round(float a)
返回最接近參數的 int。結果將捨入為整數:加上 1/2,對結果調用 floor 並將所得結果強制轉換為 int 型別。換句話說,結果等於以下表達式的值:

(int)Math.floor(a + 0.5f)

特殊情況如下:

參數:
a - 要捨入為整數的浮點值。
返回:
捨入為最接近的 int 值的參數值。
另請參見:
Integer.MAX_VALUE, Integer.MIN_VALUE

round

public static long round(double a)
返回最接近參數的 long。結果將捨入為整數:加上 1/2,對結果調用 floor 並將所得結果強制轉換為 long 型別。換句話說,結果等於以下表達式的值:

(long)Math.floor(a + 0.5d)

特殊情況如下:

參數:
a - 捨入為 long 的浮點值。
返回:
捨入為最接近的 long 值的參數值。
另請參見:
Long.MAX_VALUE, Long.MIN_VALUE

random

public static double random()
返回帶有正號的 double 值,該值大於等於 0.0 且小於 1.0。返回值是一個偽隨機(亂數) 選擇的數,在上述範圍內(近似)均勻分佈。

第一次調用該方法時,它將創建一個新的偽隨機數(亂數)產生器,與以下表達式完全相同

new java.util.Random
。之後,新的偽隨機數(亂數)產生器可用於此方法的所有調用,但不能用於其他地方。

此方法是完全同步的,可允許多個執行緒使用而不出現錯誤。但是,如果許多執行緒需要以極高的速率產生偽隨機數(亂數),那麼這可能會減少每個執行緒對擁有自己偽隨機數(亂數)產生器的爭用。

返回:
大於等於 0.0 且小於 1.0 的偽隨機(亂數) double 數。
另請參見:
Random.nextDouble()

abs

public static int abs(int a)
返回 int 值的絕對值。如果參數不是負數,則返回該參數。如果參數為負數,則返回該參數的相反數。

注意,如果參數等於 Integer.MIN_VALUE 的值,即能夠表示的最小負 int 值,那麼結果與該值相同且為負。

參數:
a - 要確定絕對值的參數。
返回:
參數的絕對值。
另請參見:
Integer.MIN_VALUE

abs

public static long abs(long a)
返回 long 值的絕對值。如果參數不是負數,則返回該參數。如果參數為負數,則返回該參數的相反數。

注意,如果參數等於 Long.MIN_VALUE 的值,即能夠表示的最小負 long 值,那麼結果與該值相同且為負。

參數:
a - 要確定絕對值的參數。
返回:
參數的絕對值。
另請參見:
Long.MIN_VALUE

abs

public static float abs(float a)
返回 float 值的絕對值。如果參數不是負數,則返回該參數。如果參數為負數,則返回該參數的相反數。特殊情況如下: 換句話說,結果等於以下表達式的值:

Float.intBitsToFloat(0x7fffffff & Float.floatToIntBits(a))

參數:
a - 要確定絕對值的參數。
返回:
參數的絕對值。

abs

public static double abs(double a)
返回 double 值的絕對值。如果參數不是負數,則返回該參數。如果參數為負數,則返回該參數的相反數。特殊情況如下: 換句話說,結果等於以下表達式的值:

Double.longBitsToDouble((Double.doubleToLongBits(a)<<1)>>>1)

參數:
a - 要確定絕對值的參數。
返回:
參數的絕對值。

max

public static int max(int a,
                      int b)
返回兩個 int 值中較大的一個。也就是說,結果為更接近 Integer.MAX_VALUE 值的參數。如果參數值相同,那麼結果也是同一個值。

參數:
a - 參數。
b - 另一個參數。
返回:
ab 中大的較大者。
另請參見:
Long.MAX_VALUE

max

public static long max(long a,
                       long b)
返回兩個 long 值中較大的一個。也就是說,結果為更接近 Long.MAX_VALUE 值的參數。如果參數值相同,那麼結果也是同一個值。

參數:
a - 參數。
b - 另一個參數。
返回:
ab 中的較大者。
另請參見:
Long.MAX_VALUE

max

public static float max(float a,
                        float b)
返回兩個 float 值中較大的一個。也就是說,結果為更接近正無窮大的參數。如果參數值相同,那麼結果也是同一個值。如果任一值為 NaN,那麼結果為 NaN。與數值比較運算不同,此方法認為負 0 嚴格小於正 0。如果一個參數為正 0,另一個參數為負 0,那麼結果為正 0。

參數:
a - 參數。
b - 另一個參數。
返回:
ab 中的較大者。

max

public static double max(double a,
                         double b)
返回兩個 double 值中較大的一個。也就是說,結果為更接近正無窮大的參數。如果參數值相同,那麼結果也是同一個值。如果任一值為 NaN,那麼結果為 NaN。與數值比較運算不同,此方法認為負 0 嚴格小於正 0。如果一個參數為正 0,另一個參數為負 0,那麼結果為正 0。

參數:
a - 參數。
b - 另一個參數。
返回:
ab 中的較大者。

min

public static int min(int a,
                      int b)
返回兩個 int 值中較小的一個。也就是說,結果為更接近 Integer.MIN_VALUE 值的參數。如果參數值相同,那麼結果也是同一個值。

參數:
a - 參數。
b - 另一個參數。
返回:
ab 中的較小者。
另請參見:
Long.MIN_VALUE

min

public static long min(long a,
                       long b)
返回兩個 long 值中較小的一個。也就是說,結果為更接近 Long.MIN_VALUE 值的參數。如果參數值相同,那麼結果也是同一個值。

參數:
a - 參數。
b - 另一個參數。
返回:
ab 中的較小者。
另請參見:
Long.MIN_VALUE

min

public static float min(float a,
                        float b)
返回兩個 float 值中較小的一個。也就是說,結果為更接近負無窮大的值。如果參數值相同,那麼結果也是同一個值。如果任一值為 NaN,那麼結果為 NaN。與數值比較運算不同,此方法認為負 0 嚴格小於正 0。如果一個參數為正 0,另一個參數為負 0,那麼結果為負 0。

參數:
a - 參數。
b - 另一個參數。
返回:
ab 中的較小者。

min

public static double min(double a,
                         double b)
返回兩個 double 值中較小的一個。也就是說,結果為更接近負無窮大的值。如果參數值相同,那麼結果也是同一個值。如果任一值為 NaN,那麼結果為 NaN。與數值比較運算不同,此方法認為負 0 嚴格小於正 0。如果一個參數為正 0,另一個參數為負 0,那麼結果為負 0。

參數:
a - 參數。
b - 另一個參數。
返回:
ab 中的較小者。

ulp

public static double ulp(double d)
返回參數的 ulp 大小。double 值的 ulp 是此浮點值與下一個數值較大的 double 值之間的正距離。注意,對於非 NaN xulp(-x) == ulp(x)

特殊情況如下:

參數:
d - 要返回其 ulp 的浮點值。
返回:
參數的 ulp 大小。
從以下版本開始:
1.5

ulp

public static float ulp(float f)
返回參數的 ulp 大小。float 值的 ulp 是該浮點值與下一個數值較大的 float 值之間的正距離。注意,對於非 NaN xulp(-x) == ulp(x)

特殊情況如下:

參數:
d - 要返回其 ulp 的浮點值。
返回:
參數的 ulp 大小。
從以下版本開始:
1.5

signum

public static double signum(double d)
返回參數的符號函數;如果參數為 0,則返回 0;如果參數大於 0,則返回 1.0;如果參數小於 0,則返回 -1.0。

特殊情況如下:

參數:
d - 要返回其符號函數的浮點值。
返回:
參數的符號函數。
從以下版本開始:
1.5

signum

public static float signum(float f)
返回參數的符號函數;如果參數為 0,則返回 0;如果參數大於 0,則返回 1.0f;如果參數小於 0,則返回 -1.0f。

特殊情況如下:

參數:
d - 要返回其符號函數的浮點值。
返回:
參數的符號函數。
從以下版本開始:
1.5

sinh

public static double sinh(double x)
返回 double 值的雙曲線正弦。x 的雙曲線正弦的定義是(ex - e-x)/2,其中e歐拉數

特殊情況如下:

參數:
x - 要返回其雙曲線正弦的數。
返回:
x 的雙曲線正弦。
從以下版本開始:
1.5

cosh

public static double cosh(double x)
返回 double 值的雙曲線餘弦。x 的雙曲線餘弦的定義是 (ex + e-x)/2,其中e歐拉數

特殊情況如下:

參數:
x - 要返回其雙曲線餘弦的數。
返回:
x 的雙曲線餘弦。
從以下版本開始:
1.5

tanh

public static double tanh(double x)
返回 double 值的雙曲線正切。x 的雙曲線正切的定義是 (ex - e-x)/(ex + e-x),即 sinh(x)/cosh(x)。注意,準確的雙曲正切絕對值始終小於 1。

特殊情況如下:

參數:
x - 要返回其雙曲線正切的數。
返回:
x 的雙曲線正切。
從以下版本開始:
1.5

hypot

public static double hypot(double x,
                           double y)
返回 sqrt(x2 +y2),沒有中間溢位或下溢。

特殊情況如下:

參數:
x - 一個值。
y - 一個值。
返回:
sqrt(x2 +y2) ,沒有中間溢位或下溢
從以下版本開始:
1.5

expm1

public static double expm1(double x)
返回 ex -1。注意,對於接近 0 的 x 值,expm1(x) + 1 的準確和比 exp(x) 更接近 ex 的真實結果。

特殊情況如下:

參數:
x - 在 ex -1 的計算中 e 的指數。
返回:
ex - 1。
從以下版本開始:
1.5

log1p

public static double log1p(double x)
返回參數與 1 之和的自然對數。注意,對於小的 x 值,log1p(x) 的結果比 log(1.0+x) 的浮點計算結果更接近 ln(1 + x) 的實際結果。

特殊情況如下:

參數:
x - 一個值。
返回:
值 ln(x + 1),即 x + 1 的自然對數。
從以下版本開始:
1.5

copySign

public static double copySign(double magnitude,
                              double sign)
返回帶有第二個浮點參數符號的第一個浮點參數。對於此方法,總是將 NaN sign 參數視為正。

參數:
magnitude - 提供結果數值的參數
sign - 提供結果符號的參數
返回:
一個值,帶有 magnitude 的數值,sign 的符號。
從以下版本開始:
1.6

copySign

public static float copySign(float magnitude,
                             float sign)
返回帶有第二個浮點參數符號的第一個浮點參數。對於此方法,總是將 NaN sign 參數視為正。

參數:
magnitude - 提供結果數值的參數
sign - 提供結果符號的參數
返回:
一個值,帶有 magnitude 的數值,sign 的符號。
從以下版本開始:
1.6

getExponent

public static int getExponent(float f)
返回 float 表示形式中使用的無偏指數。特殊情況如下:

參數:
f - 一個 float
從以下版本開始:
1.6

getExponent

public static int getExponent(double d)
返回 double 表示形式中使用的無偏指數。特殊情況如下:

參數:
d - 一個 double
從以下版本開始:
1.6

nextAfter

public static double nextAfter(double start,
                               double direction)
返回第一個參數和第二個參數之間與第一個參數相鄰的浮點數。如果兩個參數比較起來相等,則返回第二個參數。

特殊情況如下:

參數:
start - 起始浮點值。
direction - 一個值,指示應返回 start 的某個鄰數還是 start
返回:
startdirection 之間與 start 相鄰的浮點數。
從以下版本開始:
1.6

nextAfter

public static float nextAfter(float start,
                              double direction)
返回第一個參數和第二個參數之間與第一個參數相鄰的浮點數。如果兩個參數比較起來相等,則返回一個與第二個參數相等的值。

特殊情況如下:

參數:
start - 起始浮點值
direction - 一個值,指示應返回 start 的某個鄰數還是 start
返回:
startdirection 之間與 start 相鄰的浮點數。
從以下版本開始:
1.6

nextUp

public static double nextUp(double d)
返回 d 和正無窮大之間與 d 相鄰的浮點值。此方法在語義上等同於 nextAfter(d, Double.POSITIVE_INFINITY);但是,nextUp 實作的返回速度可能比其等價 nextAfter 調用快。

特殊情況如下:

參數:
d - 起始浮點值
返回:
離正無窮大較近的相鄰浮點值。
從以下版本開始:
1.6

nextUp

public static float nextUp(float f)
返回 f 和正無窮大之間與 f 相鄰的浮點值。此方法在語義上等同於 nextAfter(f, Float.POSITIVE_INFINITY);但是,nextUp 實作的返回速度可能比其等價 nextAfter 調用快。

特殊情況如下:

參數:
f - 起始浮點值
返回:
離正無窮大較近的相鄰浮點值。
從以下版本開始:
1.6

scalb

public static double scalb(double d,
                           int scaleFactor)
返回 d × 2scaleFactor,其捨入方式如同將一個正確捨入的浮點值乘到 double 值集合中的一個值。有關浮點值集合的討論,請參閱 Java 語言規範。如果結果的指數在 Double.MIN_EXPONENTDouble.MAX_EXPONENT 之間,則可以正確地計算答案;如果結果的指數大於 Double.MAX_EXPONENT,則返回無窮大。注意,如果結果為 subnormal,則可能丟失精度;也就是說,scalb(x, n) 為 subnormal 時,scalb(scalb(x, n), -n) 可能不等於 x。結果為非 NaN 時,結果的符號將與 d 相同。

特殊情況如下:

參數:
d - 要使用 2 的次方縮放的數。
scaleFactor - 用來縮放 d 的 2 的次方
返回:
d × 2scaleFactor
從以下版本開始:
1.6

scalb

public static float scalb(float f,
                          int scaleFactor)
返回 f × 2scaleFactor,其捨入方式如同將一個正確捨入的浮點值乘到 float 值集合中的一個值。有關浮點值集合的討論,請參閱 Java 語言規範。如果結果的指數在 Float.MIN_EXPONENTFloat.MAX_EXPONENT 之間,則可以正確地計算答案;如果結果的指數大於 Float.MAX_EXPONENT,則返回無窮大。注意,如果結果為 subnormal,則可能丟失精度;也就是說,scalb(x, n) 為 subnormal 時,scalb(scalb(x, n), -n) 可能不等於 x。結果為非 NaN 時,結果的符號將與 f 相同。

特殊情況如下:

參數:
f - 要使用 2 的次方縮放的數。
scaleFactor - 用來縮放 f 的 2 的次方
返回:
f × 2scaleFactor
從以下版本開始:
1.6

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only