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 が 2 の補数表記 (Java のプリミティブ整数型など) で表されているかのように動作します。 BigInteger は、Java のすべてのプリミティブ整数演算子と、java.lang.Math の関連するすべてのメソッドに類似体を提供します。 さらに、BigInteger は、モジュール式算術演算、GCD 計算、プライミング テスト、素数生成、ビット操作、およびその他のいくつかのその他の操作に対する演算を提供します。

算術演算のセマンティクスは、「Java 言語仕様」で定義されているように、Java の整数算術演算子を正確に模倣します。 たとえば、ゼロで除算すると が ArithmeticExceptionスローされ、負の除算が正の場合、負の (またはゼロ) 剰余が生成されます。

シフト操作のセマンティクスは、Java のシフト演算子のセマンティクスを拡張して、負のシフト距離を可能にします。 負のシフト距離を持つ右シフトでは、左シフトが発生し、その逆も同様です。 符号なし右シフト演算子 (>>>) は省略されます。これは、この操作は固定サイズの単語に対してのみ有効であり、概念的には無限数の先頭仮想符号ビットを持つ表現には適していないためです。

ビットごとの論理演算のセマンティクスは、Java のビットごとの整数演算子のセマンティクスを正確に模倣します。 二項演算子 (and、、 ) は、orxor演算を実行する前に、2 つのオペランドの短い方で符号拡張を暗黙的に実行します。

比較操作は、Java のリレーショナル演算子と等価演算子によって実行されるものと似た符号付き整数比較を実行します。

モジュール式算術演算は、残留物の計算、指数の実行、乗算逆関数の計算に提供されます。 これらのメソッドは常に、 と の間 0 で負でない結果を (modulus - 1)返します。

ビット演算は、2 つのオペランドの補数表現の 1 ビットに対して動作します。 必要に応じて、オペランドは符号拡張され、指定されたビットが格納されます。 1 ビットの操作では、操作対象の BigInteger とは異なる符号を持つ BigInteger を生成することはできません。このクラスによって提供される任意の大きな抽象化により、各 BigInteger の前に概念的に無限に多くの "仮想符号ビット" が存在することが保証されます。

簡潔でわかりやすくするために、BigInteger メソッドの説明全体で擬似コードが使用されます。 擬似コード式 (i + j) は、"BigInteger の値が BigInteger の値に BigInteger ijの値を加えたもの" の短縮形です。 BigInteger が BigInteger i と同じ値jを表している場合にのみ、擬似コード式(i == j)は "true の短縮形です。 その他の擬似コード式も同様に解釈されます。

このクラスのすべてのメソッドとコンストラクターは、任意の入力パラメーターに対して null オブジェクト参照が渡されると、 をスロー NullPointerException します。

BigInteger では、-2 sup/sup (exclusive) ~ +2<sup<Integer.MAX_VALUE><Integer.MAX_VALUE>/sup>> (exclusive) の範囲の値をサポートする必要があり、その範囲外の値をサポートする場合があります。<

ArithmeticException BigInteger コンストラクターまたはメソッドがサポートされている範囲外の値を生成すると、 がスローされます。

素数の可能性がある値の範囲は制限されており、サポートされている完全な正の BigInteger範囲より小さい場合があります。 範囲は、少なくとも 1 から 2<sup>500000000</sup> である必要があります。

1.1 で追加されました。

の Java ドキュメント java.math.BigInteger

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

コンストラクター

BigInteger(Byte[])

BigInteger の 2 つの補数バイナリ表現を含むバイト配列を BigInteger に変換します。

BigInteger(Byte[], Int32, Int32)

BigInteger の 2 つの補数バイナリ表現を含むバイト サブ配列を 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 オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。

BigInteger(String)

BigInteger の 10 進数の文字列形式を BigInteger に変換します。

BigInteger(String, Int32)

指定した基数の BigInteger の文字列形式を BigInteger に変換します。

プロパティ

Class

この Objectのランタイム クラスを返します。

(継承元 Object)
Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
JniIdentityHashCode

変更できない任意の有効桁数の整数。

(継承元 Object)
JniPeerMembers

変更できない任意の有効桁数の整数。

LowestSetBit

この BigInteger 内の右端 (最下位) の 1 ビットのインデックス (右端の 1 ビットの右側にある 0 ビットの数) を返します。

One

BigInteger 定数 1。

PeerReference

変更できない任意の有効桁数の整数。

(継承元 Object)
Ten

BigInteger 定数 10。

ThresholdClass

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用することを意図したものではありません。

ThresholdType

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用することを意図したものではありません。

Two

BigInteger 定数 2。

Zero

BigInteger 定数 0。

メソッド

Abs()

値がこの BigInteger の絶対値である BigInteger を返します。

Add(BigInteger)

(this + val)が である BigInteger を返します。

And(BigInteger)

(this & val)が である BigInteger を返します。

AndNot(BigInteger)

(this & ~val)が である BigInteger を返します。

BitCount()

この BigInteger の 2 つの補数表現の符号ビットとは異なるビット数を返します。

BitLength()

この BigInteger <>の最小 2 の補数表現のビット数を返します(符号ビットを除く</em>)。

ByteValue()

指定した数値の値を として byte返します。

(継承元 Number)
ByteValueExact()

これを BigInteger に変換し、 byte失われた情報をチェックします。

ClearBit(Int32)

指定されたビットがクリアされた、この BigInteger に相当する値を持つ BigInteger を返します。

Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
CompareTo(BigInteger)

この BigInteger を、指定した BigInteger と比較します。

Dispose()

変更できない任意の有効桁数の整数。

(継承元 Object)
Dispose(Boolean)

変更できない任意の有効桁数の整数。

(継承元 Object)
Divide(BigInteger)

(this / val)が である BigInteger を返します。

DivideAndRemainder(BigInteger)

を含む 2 つの BigIntegers の配列を (this / val) 返します (this % val)

DoubleValue()

この BigInteger を に double変換します。

Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
FlipBit(Int32)

指定されたビットが反転されたこの BigInteger と等価の値を持つ BigInteger を返します。

FloatValue()

この BigInteger を に float変換します。

Gcd(BigInteger)

値が と abs(val)の最も一般的な除数abs(this)である BigInteger を返します。

GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
IntValue()

この BigInteger を に変換します int

IntValueExact()

これを BigInteger に変換し、 int失われた情報をチェックします。

IsProbablePrime(Int32)

trueこの BigInteger がおそらく素数である場合は をfalse返します。それが間違いなく複合である場合は を返します。

JavaFinalize()

ガベージ コレクションがオブジェクトへの参照がなくなったと判断したときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
LongValue()

この BigInteger を に long変換します。

LongValueExact()

これを BigInteger に変換し、 long失われた情報をチェックします。

Max(BigInteger)

この BigInteger と valの最大値を返します。

Min(BigInteger)

この BigInteger と valの最小値を返します。

Mod(BigInteger)

(this mod mが である BigInteger を返します。

ModInverse(BigInteger)

値が sup-1</sup> である<(this BigInteger を返します>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()

このオブジェクトのモニターで待機している 1 つのスレッドをウェイクアップします。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドをウェイクアップします。

(継承元 Object)
Or(BigInteger)

(this | val)が である BigInteger を返します。

Pow(Int32)

(this<sup>exponent</sup>)が である BigInteger を返します。

ProbablePrime(Int32, Random)

指定した bitLength を使用して、おそらく素数の正の BigInteger を返します。

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

これを BigInteger に変換し、 short失われた情報をチェックします。

Signum()

この BigInteger の signum 関数を返します。

Sqrt()

この BigInteger の整数平方根を返します。

SqrtAndRemainder()

の整数平方根sとその剰余 this - s*sをそれぞれ含む 2 つの BigIntegers のthis配列を返します。

Subtract(BigInteger)

(this - val)が である BigInteger を返します。

TestBit(Int32)

指定されたビットが true 設定されている場合にのみ、 と を返します。

ToArray<T>()

変更できない任意の有効桁数の整数。

(継承元 Object)
ToByteArray()

この BigInteger の 2 つの補数表現を含むバイト配列を返します。

ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
ToString(Int32)

指定された基数のこの BigInteger の文字列形式を返します。

UnregisterFromRuntime()

変更できない任意の有効桁数の整数。

(継承元 Object)
ValueOf(Int64)

指定した の値と等しい BigInteger を返します long

Wait()

現在のスレッドが起動するまで待機します。通常<>は、通知</em> または <em>割り込み</em によって待機します>。

(継承元 Object)
Wait(Int64)

現在のスレッドが起動するまで待機します。通常<>は、通知</em> または>< em 割り込み</em>、または一定のリアルタイムが経過するまで待機します。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドが起動するまで待機します。通常<>は、通知</em> または>< em 割り込み</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)

変更できない任意の有効桁数の整数。

適用対象