Share via


BigInteger 類別

定義

不可變的任意精確度整數。

[Android.Runtime.Register("java/math/BigInteger", DoNotGenerateAcw=true)]
public class BigInteger : Java.Lang.Number, IDisposable, Java.Interop.IJavaPeerable, Java.Lang.IComparable
[<Android.Runtime.Register("java/math/BigInteger", DoNotGenerateAcw=true)>]
type BigInteger = class
    inherit Number
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IComparable
繼承
BigInteger
屬性
實作

備註

不可變的任意精確度整數。 所有作業的行為就像 BigIntegers 以兩個補數標記法標記法 (,例如 JAVA 的基本整數類型) 。 BigInteger 提供所有 JAVA 基本整數運算子的類比,以及來自 java.lang.Math 的所有相關方法。 此外,BigInteger 提供模組化算術、GCD 計算、主要測試、質數產生、位操作,以及一些其他作業的作業。

算數運算的語意完全符合 JAVA 整數算術運算子的語意,如 JAVA 語言規格中所定義。 例如,除以零會擲回 ArithmeticException ,而負數除以正數會產生負數 (或零) 餘數。

班次作業的語意會擴充 JAVA 的班次運算子,以允許負移距離。 具有負移距離的右移位會導致左移,反之亦然。 省略不帶正負號右移運算子 (>>>) ,因為此作業對於固定大小的字組而言才有意義,而不是在概念上具有無限數目前置虛擬符號位的標記法。

位邏輯運算的語意完全模擬 JAVA 的位整數運算子。 二進位運算子 (andor) xor 在執行作業之前,隱含地在兩個運算元的較短時間上執行符號延伸。

比較作業會執行帶正負號的整數比較,類似于 JAVA 的關聯式和相等運算子所執行的比較。

提供模組化算數運算來計算運算、執行指數,以及計算乘法反向運算。 這些方法一律會在 和 (modulus - 1) 之間 0 傳回非負值結果。

位作業會在兩個運算元之補數標記法的單一位上運作。 如有必要,運算元會以符號擴充,使其包含指定的位。 單一位作業都無法產生具有與所操作 BigInteger 不同符號的 BigInteger,因為它們只會影響單一位,而且這個類別所提供的任意大型抽象概念可確保在每個 BigInteger 前面有無限的「虛擬符號位」。

為了簡潔明瞭,虛擬程式碼會在整個 BigInteger 方法的描述中使用。 虛擬程式碼運算式 (i + j) 是「BigInteger 的縮寫,其值為 BigInteger 加上 BigInteger ij 的值」。 虛擬程式碼運算式 (i == j) 是 「 true 只有在 BigInteger 代表與 BigInteger ij 相同的值時,才為 。」 其他虛擬程式碼運算式會以類似的方式解譯。

當傳遞任何輸入參數的 Null 物件參考時,這個類別中的所有方法和建構函式都會擲 NullPointerException 回。

BigInteger 必須支援範圍 -2 < sup/sup Integer.MAX_VALUE><> (獨佔) 到 +2 < sup Integer.MAX_VALUE>< /sup > (獨佔) 的值,而且可能支援該範圍以外的值。

ArithmeticException當 BigInteger 建構函式或方法產生超出支援範圍的值時,會擲回 。

可能質值的範圍有限,而且可能小於 的完整支援正數範圍 BigInteger 。 範圍必須至少為 1 到 2 < sup > 500000000 < /sup > 。

已在 1.1 中新增。

java.math.BigInteger JAVA 檔。

此頁面的部分是根據所建立和共用的工作進行修改,並根據 2.5 屬性授權中所述的詞彙來使用。

建構函式

BigInteger(Byte[])

將位元組陣列轉譯成 BigInteger 的兩個補數二進位標記法。

BigInteger(Byte[], Int32, Int32)

將位元組子陣列轉譯成 BigInteger 的兩個補數二進位標記法。

BigInteger(Int32, Byte[])

將 BigInteger 的符號大小標記法轉譯成 BigInteger。

BigInteger(Int32, Byte[], Int32, Int32)

將 BigInteger 的符號大小標記法轉譯成 BigInteger。

BigInteger(Int32, Int32, Random)

使用指定的 bitLength,建構可能為質數的隨機產生的正 BigInteger。

BigInteger(Int32, Random)

建構隨機產生的 BigInteger,並統一分散到範圍 0 到 (2 < sup <>numBits /sup > - 1) ,包含。

BigInteger(IntPtr, JniHandleOwnership)

建立 JNI 物件的 Managed 標記法時使用的建構函式;由執行時間呼叫。

BigInteger(String)

將 BigInteger 的十進位 String 標記法轉譯成 BigInteger。

BigInteger(String, Int32)

將指定基數中 BigInteger 的 String 標記法轉譯成 BigInteger。

屬性

Class

傳回這個 Object 的執行時間類別。

(繼承來源 Object)
Handle

基礎 Android 實例的控制碼。

(繼承來源 Object)
JniIdentityHashCode

不可變的任意精確度整數。

(繼承來源 Object)
JniPeerMembers

不可變的任意精確度整數。

LowestSetBit

傳回這個 BigInteger 中最右邊 (最低順序) 一個位的索引, (最右邊一個位) 的零位數。

One

BigInteger 常數一。

PeerReference

不可變的任意精確度整數。

(繼承來源 Object)
Ten

BigInteger 常數十。

ThresholdClass

此 API 支援適用于 Android 的 Mono 基礎結構,並不適合直接從您的程式碼使用。

ThresholdType

此 API 支援適用于 Android 的 Mono 基礎結構,並不適合直接從您的程式碼使用。

Two

BigInteger 常數二。

Zero

BigInteger 常數零。

方法

Abs()

傳回 BigInteger,其值為這個 BigInteger 的絕對值。

Add(BigInteger)

傳回其值為 (this + val) 的 BigInteger。

And(BigInteger)

傳回其值為 (this & val) 的 BigInteger。

AndNot(BigInteger)

傳回其值為 (this & ~val) 的 BigInteger。

BitCount()

傳回這兩個 BigInteger 之補數標記法中與符號位不同的位數。

BitLength()

傳回這個 BigInteger 之最小二補數標記法中的位數, < em > 排除 < /em > 符號位。

ByteValue()

傳回指定數位的值做為 byte

(繼承來源 Number)
ByteValueExact()

將這個 BigIntegerbyte 轉換成 ,檢查遺失的資訊。

ClearBit(Int32)

傳回 BigInteger,其值相當於已清除指定位的這個 BigInteger。

Clone()

建立並傳回這個 物件的複本。

(繼承來源 Object)
CompareTo(BigInteger)

比較這個 BigInteger 與指定的 BigInteger。

Dispose()

不可變的任意精確度整數。

(繼承來源 Object)
Dispose(Boolean)

不可變的任意精確度整數。

(繼承來源 Object)
Divide(BigInteger)

傳回其值為 (this / val) 的 BigInteger。

DivideAndRemainder(BigInteger)

傳回兩個 BigIntegers 的陣列, (this % val) 後面 (this / val) 接著 。

DoubleValue()

將此 BigInteger 轉換為 double

Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
FlipBit(Int32)

會傳回 BigInteger,其值相當於這個 BigInteger,並具有指定的位翻轉。

FloatValue()

將此 BigInteger 轉換為 float

Gcd(BigInteger)

傳回 BigInteger,其值為 和 abs(val) 的最大通用除數 abs(this)

GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
IntValue()

將這個 BigInteger 轉換為 int

IntValueExact()

將這個 BigIntegerint 轉換成 ,檢查遺失的資訊。

IsProbablePrime(Int32)

true如果這個 BigInteger 可能是質數, false 則傳回 ,如果絕對是複合的。

JavaFinalize()

當垃圾收集判斷物件不再參考物件時,垃圾收集行程會在物件上呼叫。

(繼承來源 Object)
LongValue()

將此 BigInteger 轉換為 long

LongValueExact()

將這個 BigIntegerlong 轉換成 ,檢查遺失的資訊。

Max(BigInteger)

傳回這個 BigInteger 和 val 的最大值。

Min(BigInteger)

傳回這個 BigInteger 和 val 的最小值。

Mod(BigInteger)

傳回其值為 (this mod m) 的 BigInteger。

ModInverse(BigInteger)

傳回 BigInteger,其值為 (this< sup-1 >< /sup >mod m)

ModPow(BigInteger, BigInteger)

傳回其值為 (this<sup>exponent</sup> mod m) 的 BigInteger。

Multiply(BigInteger)

傳回其值為 (this * val) 的 BigInteger。

Negate()

傳回其值為 (-this) 的 BigInteger。

NextProbablePrime()

傳回大於可能 BigInteger 質數的第一個整數。

Not()

傳回其值為 (~this) 的 BigInteger。

Notify()

喚醒正在等候此物件監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
Or(BigInteger)

傳回其值為 (this | val) 的 BigInteger。

Pow(Int32)

傳回其值為 (this<sup>exponent</sup>) 的 BigInteger。

ProbablePrime(Int32, Random)

傳回可能為質數的正 BigInteger,且具有指定的 bitLength。

Remainder(BigInteger)

傳回其值為 (this % val) 的 BigInteger。

SetBit(Int32)

傳回 BigInteger,其值相當於具有指定位集的這個 BigInteger。

SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
ShiftLeft(Int32)

傳回其值為 (this << n) 的 BigInteger。

ShiftRight(Int32)

傳回其值為 (this >> n) 的 BigInteger。

ShortValue()

傳回指定數位的值做為 short

(繼承來源 Number)
ShortValueExact()

將這個 BigIntegershort 轉換成 ,檢查遺失的資訊。

Signum()

傳回這個 BigInteger 的符號函式。

Sqrt()

傳回這個 BigInteger 的整數平方根。

SqrtAndRemainder()

分別傳回兩個 BigIntegers 的陣列,其中包含 的 this 整數平方根 s 和其餘數 this - s*s

Subtract(BigInteger)

傳回其值為 (this - val) 的 BigInteger。

TestBit(Int32)

只有在設定指定的位時,才會傳 true 回 。

ToArray<T>()

不可變的任意精確度整數。

(繼承來源 Object)
ToByteArray()

傳回位元組陣列,其中包含這個 BigInteger 的兩個補數標記法。

ToString()

傳回物件的字串表示。

(繼承來源 Object)
ToString(Int32)

傳回指定基數中這個 BigInteger 的 String 表示。

UnregisterFromRuntime()

不可變的任意精確度整數。

(繼承來源 Object)
ValueOf(Int64)

傳回 BigInteger,其值等於指定 long 之 的值。

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)
Xor(BigInteger)

傳回其值為 (this ^ val) 的 BigInteger。

明確介面實作

IComparable.CompareTo(Object)

不可變的任意精確度整數。

IJavaPeerable.Disposed()

不可變的任意精確度整數。

(繼承來源 Object)
IJavaPeerable.DisposeUnlessReferenced()

不可變的任意精確度整數。

(繼承來源 Object)
IJavaPeerable.Finalized()

不可變的任意精確度整數。

(繼承來源 Object)
IJavaPeerable.JniManagedPeerState

不可變的任意精確度整數。

(繼承來源 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

不可變的任意精確度整數。

(繼承來源 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

不可變的任意精確度整數。

(繼承來源 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

不可變的任意精確度整數。

(繼承來源 Object)

擴充方法

JavaCast<TResult>(IJavaObject)

執行 Android 執行時間檢查的類型轉換。

JavaCast<TResult>(IJavaObject)

不可變的任意精確度整數。

GetJniTypeName(IJavaPeerable)

不可變的任意精確度整數。

適用於