StrictMath 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
類別 StrictMath
包含執行基本數值運算的方法,例如基本指數、對數、平方根和三角函數。
[Android.Runtime.Register("java/lang/StrictMath", DoNotGenerateAcw=true)]
public sealed class StrictMath : Java.Lang.Object
[<Android.Runtime.Register("java/lang/StrictMath", DoNotGenerateAcw=true)>]
type StrictMath = class
inherit Object
- 繼承
- 屬性
備註
類別 StrictMath
包含執行基本數值運算的方法,例如基本指數、對數、平方根和三角函數。
為了協助確保 Java 程式的可移植性,此套件中某些數值函式的定義需要產生與特定已發佈演算法相同的結果。 這些演算法可從已知的網路連結庫取得,作為套件「自由散發數學連結庫 netlib
」 fdlibm
https://www.netlib.org/fdlibm/。 這些以 C 程式設計語言撰寫的演算法接著會依照 Java 浮點算術規則,以所有浮點運算來執行。
Java 數學連結庫是針對 5.3 版所定義的 fdlibm
。 其中 fdlibm
提供一個以上的函式定義 (,例如 acos
) ,請使用位於名稱開頭為字母 e
) 的檔案中的 “IEEE 754 核心函式” 版本 (。 需要fdlibm
語意的方法為 sin
、cos
、tan
、asin
、、 hypot
log
atan2
pow
exp
atan
acos
cbrt
log10
tanh
sinh
cosh
expm1
和 。log1p
平臺使用帶正負號的兩個補碼整數算術與int和長基本類型。 開發人員應該選擇基本類型,以確保算術運算一致地產生正確的結果,在某些情況下,表示作業不會溢位計算的值範圍。 最佳做法是選擇基本類型和演算法以避免溢位。 如果需要偵測大小為 int
或 long
和溢位錯誤,當結果溢位時,方法 addExact
、subtractExact
、、multiplyExact
toIntExact
、 incrementExact
decrementExact
和 negateExact
會擲回 ArithmeticException
。 針對算術運算除法和絕對值,溢位只會以特定的最小值或最大值發生,而且應該視需要檢查最小值或最大值。
<h2>Ieee754RecommendedOps>IEEE 754 建議的作業</h2>
此 java.lang.Math Math
類別討論所選 Math
和 StrictMath
方法的共用實作準則品質如何與 IEEE 754 建議作業有關。
已在1.3中新增。
此頁面的部分是根據 原始碼專案所建立和共用的工作進行修改,並根據 中所述的詞彙使用。
欄位
E |
|
Pi |
|
屬性
Class |
傳回這個 |
Handle |
基礎Android實例的句柄。 (繼承來源 Object) |
JniIdentityHashCode |
類別 |
JniPeerMembers |
類別 |
PeerReference |
類別 |
ThresholdClass |
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 (繼承來源 Object) |
ThresholdType |
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 (繼承來源 Object) |
方法
Abs(Double) |
傳回值的絕對值 |
Abs(Int32) |
傳回值的絕對值 |
Abs(Int64) |
傳回值的絕對值 |
Abs(Single) |
傳回值的絕對值 |
AbsExact(Int32) |
如果值完全可表示為 |
AbsExact(Int64) |
如果值完全可表示為 |
Acos(Double) |
傳回值的反餘弦值;傳回的角度在範圍 0 中。 |
AddExact(Int32, Int32) |
傳回其自變數的總和,如果結果溢位 |
AddExact(Int64, Int64) |
傳回其自變數的總和,如果結果溢 |
Asin(Double) |
傳回值的反正弦值;傳回的角度介於 -pi/2 到 pi/2 的範圍內。 |
Atan(Double) |
傳回值的反正切值;傳回的角度介於 -pi/2 到 pi/2 的範圍內。 |
Atan2(Double, Double) |
傳回矩形座標 ( |
Cbrt(Double) |
傳回值的 Cube 根 |
Ceil(Double) |
傳回最小 (最接近負無限大) |
Clone() |
建立並傳回這個 對象的複本。 (繼承來源 Object) |
CopySign(Double, Double) |
傳回第一個浮點自變數,其中包含第二個浮點自變數的符號。 |
CopySign(Single, Single) |
傳回第一個浮點自變數,其中包含第二個浮點自變數的符號。 |
Cos(Double) |
傳回角度的三角餘弦值。 |
Cosh(Double) |
傳回值的雙曲餘弦 |
DecrementExact(Int32) |
傳回一個遞減的自變數,如果結果溢 |
DecrementExact(Int64) |
傳回一個遞減的自變數,如果結果溢 |
Dispose() |
類別 |
Dispose(Boolean) |
類別 |
Equals(Object) |
指出其他物件是否「等於」這個物件。 (繼承來源 Object) |
Exp(Double) |
傳回 Euler 的數位 e ,以值乘冪 |
Expm1(Double) |
傳回 e<sup>x</sup> -1。 |
Floor(Double) |
傳回最接近正無限大) 小於或等於自變數且等於數學整數的最大 ( |
FloorDiv(Int32, Int32) |
傳回最接近正無限大) 小於或等於代數商的最大 ( |
FloorDiv(Int64, Int32) |
傳回最接近正無限大) 小於或等於代數商的最大 ( |
FloorDiv(Int64, Int64) |
傳回最接近正無限大) 小於或等於代數商的最大 ( |
FloorMod(Int32, Int32) |
傳回自變數的 |
FloorMod(Int64, Int32) |
傳回和 |
FloorMod(Int64, Int64) |
傳回自變數的 |
Fma(Double, Double, Double) |
傳回三個自變數的 fused 乘法;也就是說,傳回第三個自變數加總的前兩個自變數的確切乘積,然後將一次四捨五入到最 |
Fma(Single, Single, Single) |
傳回三個自變數的 fused 乘法;也就是說,傳回第三個自變數加總的前兩個自變數的確切乘積,然後將一次四捨五入到最 |
GetExponent(Double) |
傳回表示 |
GetExponent(Single) |
傳回表示 |
GetHashCode() |
傳回此物件的雜湊碼值。 (繼承來源 Object) |
Hypot(Double, Double) |
傳回 sqrt (x<sup 2</sup>> +y<sup>2</sup>) ,而不需中繼溢位或下溢。 |
IEEEremainder(Double, Double) |
計算 IEEE 754 標準所指定之兩個自變數的餘數運算。 |
IncrementExact(Int32) |
傳回一個遞增的自變數,如果結果溢位 |
IncrementExact(Int64) |
傳回一個遞增的自變數,如果結果溢 |
JavaFinalize() |
當垃圾收集判斷物件不再參考物件時,垃圾收集行程會在物件上呼叫。 (繼承來源 Object) |
Log(Double) |
傳回值的自然對數 (基底 e) |
Log10(Double) |
傳回值的基底 10 對數 |
Log1p(Double) |
傳回自變數和 1 之總和的自然對數。 |
Max(Double, Double) |
傳回兩 |
Max(Int32, Int32) |
傳回兩 |
Max(Int64, Int64) |
傳回兩 |
Max(Single, Single) |
傳回兩 |
Min(Double, Double) |
傳回兩個 |
Min(Int32, Int32) |
傳回兩個 |
Min(Int64, Int64) |
傳回兩個 |
Min(Single, Single) |
傳回兩個 |
MultiplyExact(Int32, Int32) |
傳回自變數的乘積,如果結果溢位 |
MultiplyExact(Int64, Int32) |
傳回自變數的乘積,如果結果溢位 |
MultiplyExact(Int64, Int64) |
傳回自變數的乘積,如果結果溢位 |
MultiplyFull(Int32, Int32) |
傳回自變數的確切數學乘積。 |
MultiplyHigh(Int64, Int64) |
傳回為兩個 |
NegateExact(Int32) |
傳回自變數的否定,如果結果溢 |
NegateExact(Int64) |
傳回自變數的否定,如果結果溢位 |
NextAfter(Double, Double) |
傳回第二個自變數方向的第一個自變數相鄰的浮點數。 |
NextAfter(Single, Double) |
傳回第二個自變數方向的第一個自變數相鄰的浮點數。 |
NextDown(Double) |
傳回與 正無限大方向相鄰 |
NextDown(Single) |
傳回與 正無限大方向相鄰 |
NextUp(Double) |
傳回與正無限大方向相鄰 |
NextUp(Single) |
傳回與正無限大方向相鄰 |
Notify() |
喚醒正在等候此物件監視器的單一線程。 (繼承來源 Object) |
NotifyAll() |
喚醒正在等候此物件監視器的所有線程。 (繼承來源 Object) |
Pow(Double, Double) |
傳回第一個自變數的值,這個自變數會引發為第二個自變數的乘冪。 |
Random() |
|
Rint(Double) |
傳 |
Round(Double) |
傳回最接近 |
Round(Single) |
傳回最接近 |
Scalb(Double, Int32) |
|
Scalb(Single, Int32) |
|
SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
Signum(Double) |
傳回自變數的符號函式;如果自變數為零,則為零,則為1。 |
Signum(Single) |
傳回自變數的符號函式;如果自變數為零,則為零,則為1。 |
Sin(Double) |
傳回角度的三角正弦值。 |
Sinh(Double) |
傳回值的雙曲正弦值 |
Sqrt(Double) |
傳回值正確四捨五入的 |
SubtractExact(Int32, Int32) |
傳回自變數的差異,如果結果溢位 |
SubtractExact(Int64, Int64) |
傳回自變數的差異,如果結果溢位 |
Tan(Double) |
傳回角度的三角正切值。 |
Tanh(Double) |
傳回值的雙曲正切值 |
ToArray<T>() |
類別 |
ToDegrees(Double) |
將以弧度為單位的角度轉換為以度為單位測量的近似相等角度。 |
ToIntExact(Int64) |
傳回自變數的值,如果值 |
ToRadians(Double) |
將以度為單位測量的角度轉換為以弧度測量的近似對等角度。 |
ToString() |
傳回物件的字串表示。 (繼承來源 Object) |
Ulp(Double) |
傳回自變數的 ulp 大小。 |
Ulp(Single) |
傳回自變數的 ulp 大小。 |
UnregisterFromRuntime() |
類別 |
Wait() |
讓目前的線程等到喚醒為止,通常是em <notified/em>或<em>interrupted</em>。>< (繼承來源 Object) |
Wait(Int64) |
讓目前的線程等到喚醒為止,通常是em <notified/em>或<em>interrupted</em>,或直到經過一定數量的實時為止。<> (繼承來源 Object) |
Wait(Int64, Int32) |
讓目前的線程等到喚醒為止,通常是em <notified/em>或<em>interrupted</em>,或直到經過一定數量的實時為止。<> (繼承來源 Object) |
明確介面實作
IJavaPeerable.Disposed() |
類別 |
IJavaPeerable.DisposeUnlessReferenced() |
類別 |
IJavaPeerable.Finalized() |
類別 |
IJavaPeerable.JniManagedPeerState |
類別 |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
類別 |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
類別 |
IJavaPeerable.SetPeerReference(JniObjectReference) |
類別 |
擴充方法
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
類別 |
GetJniTypeName(IJavaPeerable) |
類別 |