JavaTM 2 Platform
Standard Ed. 6

java.math
類別 BigInteger

java.lang.Object
  繼承者 java.lang.Number
      繼承者 java.math.BigInteger
所有已實作的介面:
Serializable, Comparable<BigInteger>

public class BigInteger
extends Number
implements Comparable<BigInteger>

不可變的任意精度的整數。所有操作中,都以二進制補碼形式表示 BigInteger(如 Java 的基本整數型別)。BigInteger 提供所有 Java 的基本整數操作符的對應物,並提供 java.lang.Math 的所有相關方法。另外,BigInteger 還提供以下運算:模算術、GCD 計算、質數測試、素數產生、位操作以及一些其他操作。

算術運算的語義完全模仿 Java 整數算術運算符的語義,如 The Java Language Specification 中所定義的。例如,以零作為除數的除法拋出 ArithmeticException,而負數除以正數的除法則產生一個負(或零)的餘數。Spec 中關於溢位的細節都被忽略了,因為 BigIntegers 所設置的實際大小能適應操作結果的需要。

位移操作的語義擴展了 Java 的位移操作符的語義以允許產生負位移距離。帶有負位移距離的右移操作會導致左移操作,反之亦然。忽略無符號的右位移運算符(>>>),因為該操作與由此類別提供的“無窮大的詞大小”抽象結合使用時毫無意義。

逐位邏輯運算的語義完全模仿 Java 的逐位整數運算符的語義。在執行操作之前,二進制運算符(andorxor)對兩個操作數中的較短操作數隱式執行符號擴展。

比較操作執行有符號的整數比較,類似於 Java 的關係運算符和相等性運算符執行的比較。

提供的模算術操作用來計算餘數、求冪和乘法可逆元。這些方法始終返回非負結果,範圍在 0(modulus - 1)(包括)之間。

位操作對其操作數的二進制補碼表示形式的單個位進行操作。如有必要,操作數會通過擴展符號來包含指定的位。單一位操作不能產生與正在被操作的 BigInteger 符號不同的 BigInteger,因為它們僅僅影響單個位,並且此類別提供的“無窮大詞大小”抽象可保證在每個 BigInteger 前存在無窮多的“虛擬符號位”數。

為了簡潔明瞭,在整個 BigInteger 方法的描述中都使用了偽程式碼。偽程式碼表達式 (i + j) 是“其值為 BigInteger i 加 BigInteger j 的 BigInteger”的簡寫。偽程式碼表達式 (i == j) 是“當且僅當 BigInteger i 表示與 BigInteger j 相同的值時,才為 true”的簡寫。可以類似地解釋其他偽程式碼表達式。

當為任何輸入參數傳遞 null 物件參考時,此類別中的所有方法和建構子都將拋出 NullPointerException

從以下版本開始:
JDK1.1
另請參見:
BigDecimal, 序列化表格

欄位摘要
static BigInteger ONE
          BigInteger 的常數 1。
static BigInteger TEN
          BigInteger 的常數 10。
static BigInteger ZERO
          BigInteger 的常數 0。
 
建構子摘要
BigInteger(byte[] val)
          將包含 BigInteger 的二進制補碼表示形式的 byte 陣列轉換為 BigInteger。
BigInteger(int signum, byte[] magnitude)
          將 BigInteger 的符號-數量表示形式轉換為 BigInteger。
BigInteger(int bitLength, int certainty, Random rnd)
          建構一個隨機產生的正 BigInteger,它可能是一個具有指定 bitLength 的素數。
BigInteger(int numBits, Random rnd)
          建構一個隨機產生的 BigInteger,它是在 0(2numBits - 1)(包括)範圍內均勻分佈的值。
BigInteger(String val)
          將 BigInteger 的十進制字元串表示形式轉換為 BigInteger。
BigInteger(String val, int radix)
          將指定進制的 BigInteger 的字元串表示形式轉換為 BigInteger。
 
方法摘要
 BigInteger abs()
          返回其值是此 BigInteger 的絕對值的 BigInteger。
 BigInteger add(BigInteger val)
          返回其值為 (this + val) 的 BigInteger。
 BigInteger and(BigInteger val)
          返回其值為 (this & val) 的 BigInteger。
 BigInteger andNot(BigInteger val)
          返回其值為 (this & ~val) 的 BigInteger。
 int bitCount()
          返回此 BigInteger 的二進制補碼表示形式中與符號不同的位的數量。
 int bitLength()
          返回此 BigInteger 的最小的二進制補碼表示形式的位數,不包括 符號位。
 BigInteger clearBit(int n)
          返回其值與清除了指定位的此 BigInteger 等效的 BigInteger。
 int compareTo(BigInteger val)
          將此 BigInteger 與指定的 BigInteger 進行比較。
 BigInteger divide(BigInteger val)
          返回其值為 (this / val) 的 BigInteger。
 BigInteger[] divideAndRemainder(BigInteger val)
          返回包含 (this / val) 後跟 (this % val) 的兩個 BigInteger 的陣列。
 double doubleValue()
          將此 BigInteger 轉換為 double
 boolean equals(Object x)
          比較此 BigInteger 與指定的 Object 的相等性。
 BigInteger flipBit(int n)
          返回其值與對此 BigInteger 進行指定位翻轉後的值等效的 BigInteger。
 float floatValue()
          將此 BigInteger 轉換為 float
 BigInteger gcd(BigInteger val)
          返回一個 BigInteger,其值是 abs(this)abs(val) 的最大公約數。
 int getLowestSetBit()
          返回此 BigInteger 最右端(最低位)1 位元的索引(即從此位元組的右端開始到本位元組中最右端 1 位元之間的 0 位元的位數)。
 int hashCode()
          返回此 BigInteger 的雜湊碼。
 int intValue()
          將此 BigInteger 轉換為 int
 boolean isProbablePrime(int certainty)
          如果此 BigInteger 可能為素數,則返回 true,如果它一定為合數,則返回 false
 long longValue()
          將此 BigInteger 轉換為 long
 BigInteger max(BigInteger val)
          返回此 BigInteger 和 val 的最大值。
 BigInteger min(BigInteger val)
          返回此 BigInteger 和 val 的最小值。
 BigInteger mod(BigInteger m)
          返回其值為 (this mod m) 的 BigInteger。
 BigInteger modInverse(BigInteger m)
          返回其值為 (this-1 mod m) 的 BigInteger。
 BigInteger modPow(BigInteger exponent, BigInteger m)
          返回其值為 (thisexponent mod m) 的 BigInteger。
 BigInteger multiply(BigInteger val)
          返回其值為 (this * val) 的 BigInteger。
 BigInteger negate()
          返回其值是 (-this) 的 BigInteger。
 BigInteger nextProbablePrime()
          返回大於此 BigInteger 的可能為素數的第一個整數。
 BigInteger not()
          返回其值為 (~this) 的 BigInteger。
 BigInteger or(BigInteger val)
          返回其值為 (this | val) 的 BigInteger。
 BigInteger pow(int exponent)
          返回其值為 (thisexponent) 的 BigInteger。
static BigInteger probablePrime(int bitLength, Random rnd)
          返回有可能是素數的、具有指定長度的正 BigInteger。
 BigInteger remainder(BigInteger val)
          返回其值為 (this % val) 的 BigInteger。
 BigInteger setBit(int n)
          返回其值與設置了指定位的此 BigInteger 等效的 BigInteger。
 BigInteger shiftLeft(int n)
          返回其值為 (this << n) 的 BigInteger。
 BigInteger shiftRight(int n)
          返回其值為 (this >> n) 的 BigInteger。
 int signum()
          返回此 BigInteger 的正負號函數。
 BigInteger subtract(BigInteger val)
          返回其值為 (this - val) 的 BigInteger。
 boolean testBit(int n)
          當且僅當設置了指定的位時,返回 true
 byte[] toByteArray()
          返回一個 byte 陣列,該陣列包含此 BigInteger 的二進制補碼表示形式。
 String toString()
          返回此 BigInteger 的十進制字元串表示形式。
 String toString(int radix)
          返回此 BigInteger 的給定進制的字元串表示形式。
static BigInteger valueOf(long val)
          返回其值等於指定 long 的值的 BigInteger。
 BigInteger xor(BigInteger val)
          返回其值為 (this ^ val) 的 BigInteger。
 
從類別 java.lang.Number 繼承的方法
byteValue, shortValue
 
從類別 java.lang.Object 繼承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

欄位詳細資訊

ZERO

public static final BigInteger ZERO
BigInteger 的常數 0。

從以下版本開始:
1.2

ONE

public static final BigInteger ONE
BigInteger 的常數 1。

從以下版本開始:
1.2

TEN

public static final BigInteger TEN
BigInteger 的常數 10。

從以下版本開始:
1.5
建構子詳細資訊

BigInteger

public BigInteger(byte[] val)
將包含 BigInteger 的二進制補碼表示形式的 byte 陣列轉換為 BigInteger。輸入陣列假定為 big-endian 位元組順序:最高有效位元組在第零個元素中。

參數:
val - BigInteger 的 big-endian 二進制補碼表示形式。
拋出:
NumberFormatException - val 為零位元組長。

BigInteger

public BigInteger(int signum,
                  byte[] magnitude)
將 BigInteger 的符號-數量表示形式轉換為 BigInteger。該符號表示為一個正負號整數值:-1 表示負,0 表示零,1 表示正。該大小是一個 big-endian 位元組順序的 byte 陣列:最高有效位元組在第零個元素中。允許零長度數量陣列,這會導致 BigInteger 的值為 0,無論其正負號是 -1、0 還是 1。

參數:
signum - 該數的正負號(-1 表示負,0 表示零,1 表示正)。
magnitude - 該數的大小的 big-endian 二進製表示形式。
拋出:
NumberFormatException - signum 不是三個合法值之一(-1、0 和 1),或者 signum 是 0 並且 magnitude 套件含一個或多個非零位元組。

BigInteger

public BigInteger(String val,
                  int radix)
將指定進制的 BigInteger 的字元串表示形式轉換為 BigInteger。該字元串表示形式包括一個可選的減號,後跟一個或多個指定進制的數字。字元到數字的映射由 Character.digit 提供。該字元串不能包含任何其他字元(例如,空格)。

參數:
val - BigInteger 的字元串表示形式。
radix - 要在解釋 val 時使用的進制。
拋出:
NumberFormatException - val 不是指定進制的 BigInteger 的有效表示形式,或者 radix 超出從 Character.MIN_RADIXCharacter.MAX_RADIX(包括)的範圍。
另請參見:
Character.digit(char, int)

BigInteger

public BigInteger(String val)
將 BigInteger 的十進制字元串表示形式轉換為 BigInteger。該字元串表示形式包括一個可選的減號,後跟一個或多個十進制數字序列。字元到數字的映射由 Character.digit 提供。該字元串不能包含任何其他字元(例如,空格)。

參數:
val - BigInteger 的十進制字元串表示形式。
拋出:
NumberFormatException - val 不是 BigInteger 的有效表示形式。
另請參見:
Character.digit(char, int)

BigInteger

public BigInteger(int numBits,
                  Random rnd)
建構一個隨機產生的 BigInteger,它是在 0(2numBits - 1)(包括)範圍內均勻分佈的值。該分佈的均勻性假定 rnd 中提供了一個隨機位的公平源 (fair source)。注意,此建構子始終建構一個非負 BigInteger。

參數:
numBits - 新 BigInteger 的最大 bitLength。
rnd - 計算新 BigInteger 時使用的隨機源。
拋出:
IllegalArgumentException - 如果 numBits 為負。
另請參見:
bitLength()

BigInteger

public BigInteger(int bitLength,
                  int certainty,
                  Random rnd)
建構一個隨機產生的正 BigInteger,它可能是一個具有指定 bitLength 的素數。

相對於此建構子,建議優先使用 probablePrime 方法,必須指定一個確定數的情況除外。

參數:
bitLength - 返回的 BigInteger 的 bitLength。
certainty - 調用方允許的不確定性的度量。新的 BigInteger 表示素數的概率超出 (1 - 1/2certainty)。此建構子的執行時間與此參數的值是成比例的。
rnd - 隨機位元源,用這些隨機位元選擇用來進行質數測試的候選數。
拋出:
ArithmeticException - bitLength < 2
另請參見:
bitLength()
方法詳細資訊

probablePrime

public static BigInteger probablePrime(int bitLength,
                                       Random rnd)
返回有可能是素數的、具有指定長度的正 BigInteger。此方法返回的 BigInteger 是合數的概率不超出 2-100

參數:
bitLength - 返回的 BigInteger 的 bitLength。
rnd - 隨機位元源,用這些隨機位元選擇用來進行質數測試的候選數。
返回:
可能是素數的 bitLength 個位的 BigInteger
拋出:
ArithmeticException - bitLength < 2
從以下版本開始:
1.4
另請參見:
bitLength()

nextProbablePrime

public BigInteger nextProbablePrime()
返回大於此 BigInteger 的可能為素數的第一個整數。此方法返回的數是合數的概率不超出 2-100。此方法在執行以下搜尋時將始終不會跳過素數:如果它返回 p,則不存在 this < q < p 的素數 q

返回:
返回大於此 BigInteger 的可能為素數的第一個整數。
拋出:
ArithmeticException - this < 0
從以下版本開始:
1.5

valueOf

public static BigInteger valueOf(long val)
返回其值等於指定 long 的值的 BigInteger。提供的此“靜態處理器方法”優先於 (long) 建構子,因為前者允許重用經常使用的 BigInteger。

參數:
val - 要返回的 BigInteger 的值。
返回:
具有指定值的 BigInteger。

add

public BigInteger add(BigInteger val)
返回其值為 (this + val) 的 BigInteger。

參數:
val - 將添加到此 BigInteger 中的值。
返回:
this + val

subtract

public BigInteger subtract(BigInteger val)
返回其值為 (this - val) 的 BigInteger。

參數:
val - 從此 BigInteger 中減去的值。
返回:
this - val

multiply

public BigInteger multiply(BigInteger val)
返回其值為 (this * val) 的 BigInteger。

參數:
val - 要乘以此 BigInteger 的值。
返回:
this * val

divide

public BigInteger divide(BigInteger val)
返回其值為 (this / val) 的 BigInteger。

參數:
val - 此 BigInteger 要除以的值。
返回:
this / val
拋出:
ArithmeticException - val==0

divideAndRemainder

public BigInteger[] divideAndRemainder(BigInteger val)
返回包含 (this / val) 後跟 (this % val) 的兩個 BigInteger 的陣列。

參數:
val - 此 BigInteger 要除以的值和計算所得的餘數。
返回:
兩個 BigInteger 的陣列:商 (this / val) 是初始元素,餘數 (this % val) 是最終元素。
拋出:
ArithmeticException - val==0

remainder

public BigInteger remainder(BigInteger val)
返回其值為 (this % val) 的 BigInteger。

參數:
val - 此 BigInteger 要除以的值和計算所得的餘數。
返回:
this % val
拋出:
ArithmeticException - val==0

pow

public BigInteger pow(int exponent)
返回其值為 (thisexponent) 的 BigInteger。注意,exponent 是一個整數而不是 BigInteger。

參數:
exponent - 此 BigInteger 的指數。
返回:
thisexponent
拋出:
ArithmeticException - exponent 為負。(這會導致該運算產生一個非整數值。)

gcd

public BigInteger gcd(BigInteger val)
返回一個 BigInteger,其值是 abs(this)abs(val) 的最大公約數。如果 this==0 && val==0,則返回 0 。

參數:
val - 要一起計算最大公約數的值。
返回:
GCD(abs(this), abs(val))

abs

public BigInteger abs()
返回其值是此 BigInteger 的絕對值的 BigInteger。

返回:
abs(this)

negate

public BigInteger negate()
返回其值是 (-this) 的 BigInteger。

返回:
-this

signum

public int signum()
返回此 BigInteger 的正負號函數。

返回:
當此 BigInteger 的值為負、零或正時,返回 -1、0 或 1。

mod

public BigInteger mod(BigInteger m)
返回其值為 (this mod m) 的 BigInteger。此方法不同於 remainder,因為它始終返回一個 非負 BigInteger。

參數:
m - 模數。
返回:
this mod m
拋出:
ArithmeticException - m <= 0
另請參見:
remainder(java.math.BigInteger)

modPow

public BigInteger modPow(BigInteger exponent,
                         BigInteger m)
返回其值為 (thisexponent mod m) 的 BigInteger。(與 pow 不同,此方法允許使用負指數。)

參數:
exponent - 該指數。
m - 模數。
返回:
thisexponent mod m
拋出:
ArithmeticException - m <= 0
另請參見:
modInverse(java.math.BigInteger)

modInverse

public BigInteger modInverse(BigInteger m)
返回其值為 (this-1 mod m) 的 BigInteger。

參數:
m - 模數。
返回:
this-1 mod m.
拋出:
ArithmeticException - m <= 0,或者此 BigInteger 沒有乘法可逆元 mod m(即此 BigInteger 不是 m 的相對素數)。

shiftLeft

public BigInteger shiftLeft(int n)
返回其值為 (this << n) 的 BigInteger。位移距離 n 可以為負,在此情況下,此方法執行右移操作。(計算 floor(this * 2n)。)

參數:
n - 以位為單位的位移距離。
返回:
this << n
另請參見:
shiftRight(int)

shiftRight

public BigInteger shiftRight(int n)
返回其值為 (this >> n) 的 BigInteger。執行符號擴展。位移距離 n 可以為負,在此情況下,此方法執行左移操作。(計算 floor(this / 2n)。)

參數:
n - 以位為單位的位移距離。
返回:
this >> n
另請參見:
shiftLeft(int)

and

public BigInteger and(BigInteger val)
返回其值為 (this & val) 的 BigInteger。(當且僅當 this 和 val 同時為負時,此方法返回一個負 BigInteger。)

參數:
val - 要與此 BigInteger 執行 AND(與)運算的值。
返回:
this & val

or

public BigInteger or(BigInteger val)
返回其值為 (this | val) 的 BigInteger。(當且僅當 this 和 val 之一為負時,此方法返回一個負 BigInteger。)

參數:
val - 要與此 BigInteger 執行或運算的值。
返回:
this | val

xor

public BigInteger xor(BigInteger val)
返回其值為 (this ^ val) 的 BigInteger。(當且僅當 this 和 val 中只有一個為負時,此方法返回一個負 BigInteger。)

參數:
val - 要與此 BigInteger 執行異或運算的值。
返回:
this ^ val

not

public BigInteger not()
返回其值為 (~this) 的 BigInteger。(當且僅當此 BigInteger 為非負時,此方法返回一個負值。)

返回:
~this

andNot

public BigInteger andNot(BigInteger val)
返回其值為 (this & ~val) 的 BigInteger。此方法等效於 and(val.not()),提供此方法是為了更方便地進行屏蔽操作。(當且僅當 this 為負且 val 為正時,此方法返回一個負 BigInteger。)

參數:
val - 要進行求補且與此 BigInteger 執行與運算的值。
返回:
this & ~val

testBit

public boolean testBit(int n)
當且僅當設置了指定的位時,返回 true。(計算 ((this & (1<<n)) != 0)。)

參數:
n - 要測試的位的索引。
返回:
當且僅當設置了指定的位時,返回 true
拋出:
ArithmeticException - n 為負。

setBit

public BigInteger setBit(int n)
返回其值與設置了指定位的此 BigInteger 等效的 BigInteger。(計算 (this | (1<<n))。)

參數:
n - 要設置的位的索引。
返回:
this | (1<<n)
拋出:
ArithmeticException - n 為負。

clearBit

public BigInteger clearBit(int n)
返回其值與清除了指定位的此 BigInteger 等效的 BigInteger。(計算 (this & ~(1<<n))。)

參數:
n - 要清除的位的索引。
返回:
this & ~(1<<n)
拋出:
ArithmeticException - n 為負。

flipBit

public BigInteger flipBit(int n)
返回其值與對此 BigInteger 進行指定位翻轉後的值等效的 BigInteger。(計算 (this ^ (1<<n))。)

參數:
n - 要翻轉的位的索引。
返回:
this ^ (1<<n)
拋出:
ArithmeticException - n 為負。

getLowestSetBit

public int getLowestSetBit()
返回此 BigInteger 最右端(最低位)1 位元的索引(即從此位元組的右端開始到本位元組中最右端 1 位元之間的 0 位元的位數)。如果此 BigInteger 不包含一位,則返回 -1。(計算 (this==0? -1 : log2(this & -this))。)

返回:
此 BigInteger 中最右端的一位元位的索引。

bitLength

public int bitLength()
返回此 BigInteger 的最小的二進制補碼表示形式的位數,不包括 符號位。對於正 BigInteger,這等於常規二進製表示形式中的位數。(計算 (ceil(log2(this < 0 ? -this : this+1)))。)

返回:
返回此 BigInteger 的最小的二進制補碼表示形式中的位數,不包括 符號位。

bitCount

public int bitCount()
返回此 BigInteger 的二進制補碼表示形式中與符號不同的位的數量。此方法在實作 BigInteger 上的位元向量樣式設置時非常有用。

返回:
返回此 BigInteger 的二進制補碼表示形式中與符號位不同的位的數量。

isProbablePrime

public boolean isProbablePrime(int certainty)
如果此 BigInteger 可能為素數,則返回 true,如果它一定為合數,則返回 false。如果 certainty <= 0,則返回 true

參數:
certainty - 調用方允許的不確定性的度量。如果該調用返回 true,則此 BigInteger 是素數的概率超出 (1 - 1/2certainty)。此方法的執行時間與此參數的值是成比例的。
返回:
如果此 BigInteger 可能為素數,則返回 true,如果它一定為合數,則返回 false

compareTo

public int compareTo(BigInteger val)
將此 BigInteger 與指定的 BigInteger 進行比較。對於針對六個布林比較運算符 (<, ==, >, >=, !=, <=) 中的每一個運算符的各個方法,優先提供此方法。執行這些比較的建議語句是:(x.compareTo(y) <op> 0),其中 <op> 是六個比較運算符之一。

指定者:
介面 Comparable<BigInteger> 中的 compareTo
參數:
val - 將此 BigInteger 與之比較的 BigInteger。
返回:
當此 BigInteger 在數值上小於、等於或大於 val 時,返回 -1,0,或 1。

equals

public boolean equals(Object x)
比較此 BigInteger 與指定的 Object 的相等性。

覆寫:
類別 Object 中的 equals
參數:
x - 將此 BigInteger 與之比較的 Object。
返回:
當且僅當指定的 Object 是一個其值在數字上等於此 BigInteger 的 BigInteger 時,返回 true
另請參見:
Object.hashCode(), Hashtable

min

public BigInteger min(BigInteger val)
返回此 BigInteger 和 val 的最小值。

參數:
val - 要計算最小值的值。
返回:
其值為此 BigInteger 和 val 中的較小值的 BigInteger。如果它們相等,可能返回其中之一。

max

public BigInteger max(BigInteger val)
返回此 BigInteger 和 val 的最大值。

參數:
val - 要計算最大值的值。
返回:
其值為此 BigInteger 和 val 中較大值的 BigInteger。如果它們相等,可能返回其中之一。

hashCode

public int hashCode()
返回此 BigInteger 的雜湊碼。

覆寫:
類別 Object 中的 hashCode
返回:
此 BigInteger 的雜湊碼。
另請參見:
Object.equals(java.lang.Object), Hashtable

toString

public String toString(int radix)
返回此 BigInteger 的給定進制的字元串表示形式。如果該進制超出從 Character.MIN_RADIXCharacter.MAX_RADIX(包括)這一範圍,則其預設值為 10(Integer.toString 就是這種情況)。使用由 Character.forDigit 提供的從數字到字元的映射,並在需要時在前面加一個負號。(此表示形式與 (String, int) 建構子相容。)

參數:
radix - 字元串表示形式的進制。
返回:
此 BigInteger 給定進制的字元串表示形式。
另請參見:
Integer.toString(int, int), Character.forDigit(int, int), BigInteger(java.lang.String, int)

toString

public String toString()
返回此 BigInteger 的十進制字元串表示形式。使用由 Character.forDigit 提供的從數字到字元的映射,並在需要時在前面加一個負號。(此表示形式與 (String) 建構子相容,並允許使用 Java 的 + 運算符將字元串連接。)

覆寫:
類別 Object 中的 toString
返回:
此 BigInteger 的十進制字元串表示形式。
另請參見:
Character.forDigit(int, int), BigInteger(java.lang.String)

toByteArray

public byte[] toByteArray()
返回一個 byte 陣列,該陣列包含此 BigInteger 的二進制補碼表示形式。該 byte 陣列將為 big-endian 位元組順序:最高有效位元組在第零個元素中。此陣列將包含表示此 BigInteger 所需的最小數量的位元組,至少包括一個符號位,即 (ceil((this.bitLength() + 1)/8))。(此表示形式與 (byte[]) 建構子相容。)

返回:
一個套件含此 BigInteger 的二進制補碼表示形式的 byte 陣列。
另請參見:
BigInteger(byte[])

intValue

public int intValue()
將此 BigInteger 轉換為 int。此轉換類似於 Java Language Specification 中定義的從 longint基本收縮轉換:如果此 BigInteger 太長而不適合用 int 表示,則僅返回 32 位的低位位元組。注意,此轉換會丟失關於該 BigInteger 值的總大小的資訊,並返回帶有相反符號的結果。

指定者:
類別 Number 中的 intValue
返回:
轉換為 int 的此 BigInteger。

longValue

public long longValue()
將此 BigInteger 轉換為 long。此轉換類似於 Java Language Specification 中定義的從 longint基本收縮轉換:如果此 BigInteger 太長而不適合用 long 表示,則僅返回 64 位的低位位元組。注意,此轉換會丟失關於該 BigInteger 值的總大小的資訊,並返回帶有相反符號的結果。

指定者:
類別 Number 中的 longValue
返回:
轉換為 long 的此 BigInteger。

floatValue

public float floatValue()
將此 BigInteger 轉換為 float。此轉換類似於 Java Language Specification 中定義的從 doublefloat基本收縮轉換:如果此 BigInteger 的數量太大,不能表示為 float,則將其適當地轉換為 Float.NEGATIVE_INFINITYFloat.POSITIVE_INFINITY。注意,即使在返回值是有限的情況下,此轉換也可以丟失關於 BigInteger 值的精度的資訊。

指定者:
類別 Number 中的 floatValue
返回:
轉換為 float 的此 BigInteger。

doubleValue

public double doubleValue()
將此 BigInteger 轉換為 double。此轉換類似於 Java Language Specification 中定義的從 doublefloat基本收縮轉換:如果此 BigInteger 的數量太大,不能表示為 double,則將其適當地轉換為 Double.NEGATIVE_INFINITYDouble.POSITIVE_INFINITY。注意,即使在返回值是有限的情況下,此轉換也可以丟失關於 BigInteger 值的精度的資訊。

指定者:
類別 Number 中的 doubleValue
返回:
轉換為 double 的此 BigInteger。

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

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