Freigeben über


BigInteger Klasse

Definition

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

[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
Vererbung
BigInteger
Attribute
Implementiert

Hinweise

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit. Alle Vorgänge verhalten sich so, als ob BigIntegers in der Notation von zwei (wie den primitiven ganzzahligen Typen von Java) dargestellt wurden. BigInteger stellt Analoga zu allen primitiven ganzzahligen Operatoren von Java und allen relevanten Methoden aus java.lang.Math bereit. Darüber hinaus bietet BigInteger Operationen für modulare Arithmetik, GCD-Berechnung, Primalitätstests, Prime Generation, Bitmanipulation und einige andere verschiedene Vorgänge.

Semantik von arithmetischen Vorgängen imitieren genau diejenigen von ganzzahligen arithmetischen Operatoren von Java, wie in der Java-Sprachspezifikation definiert. Beispielsweise löst division by zero eine ArithmeticExceptionund division of a negative by a positive yields a negative (or zero) restder.

Die Semantik von Schichtvorgängen erweitert die Schichtoperatoren von Java, um negative Schichtabstände zu ermöglichen. Eine Rechtsverschiebung mit einem negativen Schichtabstand führt zu einer linken Schicht und umgekehrt. Der nicht signierte Rechte Schichtoperator (>>>) wird weggelassen, da dieser Vorgang nur für ein Wort mit fester Größe und nicht für eine Darstellung sinnvoll ist, die eine unendliche Anzahl von führenden virtuellen Zeichenbits enthält.

Semantik von bitweisen logischen Vorgängen imitieren genau diejenigen der bitweisen ganzzahligen Operatoren von Java. Die binären Operatoren (and, or, xor) führen implizit vor dem Ausführen des Vorgangs die Sign-Erweiterung auf den kürzeren der beiden Operanden aus.

Vergleichsvorgänge führen signierte ganzzahlige Vergleiche aus, analog zu denen, die von den relationalen Operatoren und Gleichheitsoperatoren von Java ausgeführt werden.

Modulare arithmetische Operationen werden zur Berechnung von Rückständen, zur Durchführung von Exponentiation und zur Berechnung von multiplizierten Inversen bereitgestellt. Diese Methoden geben immer ein nicht negatives Ergebnis zwischen 0 und (modulus - 1)einschließlich zurück.

Bitoperationen werden auf einem einzelnen Bit der beiden Operanden ausgeführt. Bei Bedarf wird der Operand sign-erweitert, sodass er das angegebene Bit enthält. Keiner der Single-Bit-Vorgänge kann einen BigInteger mit einem anderen Vorzeichen als bigInteger erzeugen, da sie sich nur auf ein einzelnes Bit auswirken, und die willkürlich große Abstraktion dieser Klasse stellt sicher, dass konzeptionell viele "virtuelle Zeichenbits" vor jedem BigInteger stehen.

Aus Platzgründen und Klarheit wird Pseudocode in den Beschreibungen der BigInteger-Methoden verwendet. Der Pseudocodeausdruck (i + j) ist kurz für "bigInteger, dessen Wert der BigInteger i plus die des BigInteger j" ist. Der Pseudocodeausdruck (i == j) ist kurz für "true if and only if the BigInteger i represents the same value as the BigInteger j." Andere Pseudocodeausdrücke werden ähnlich interpretiert.

Alle Methoden und Konstruktoren in dieser Klasse werden ausgelöst NullPointerException , wenn ein NULL-Objektverweis für jeden Eingabeparameter übergeben wird.

BigInteger muss Werte im Bereich -2<supInteger.MAX_VALUE></sup (exklusiv) bis +2<sup<>Integer.MAX_VALUE/sup>> (exklusiv) unterstützen und werte außerhalb dieses Bereichs unterstützen.

Ein ArithmeticException Fehler wird ausgelöst, wenn ein BigInteger-Konstruktor oder eine Methode einen Wert außerhalb des unterstützten Bereichs generiert.

Der Bereich der wahrscheinlichen Prime-Werte ist begrenzt und kann kleiner als der vollständige unterstützte positive Bereich sein BigInteger. Der Bereich muss mindestens 1 bis 2<sup>500000000/<sup> sein.

In 1.1 hinzugefügt.

Java-Dokumentation für java.math.BigInteger.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

BigInteger(Byte[])

Übersetzt ein Bytearray, das die binäre Darstellung eines BigIntegers enthält, in einen BigInteger.

BigInteger(Byte[], Int32, Int32)

Übersetzt ein Byteunterarray, das die binäre Darstellung eines BigIntegers enthält, in einen BigInteger.

BigInteger(Int32, Byte[])

Übersetzt die Sign-Magnitude-Darstellung eines BigInteger in einen BigInteger.

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

Übersetzt die Sign-Magnitude-Darstellung eines BigInteger in einen BigInteger.

BigInteger(Int32, Int32, Random)

Erstellt einen zufällig generierten positiven BigInteger, der wahrscheinlich prime ist, mit dem angegebenen BitLength.

BigInteger(Int32, Random)

Erstellt einen zufällig generierten BigInteger, einheitlich verteilt über den Bereich 0 bis (2<sup<>numBits/sup> - 1), einschließlich.

BigInteger(IntPtr, JniHandleOwnership)

Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen.

BigInteger(String)

Übersetzt die dezimale Zeichenfolgendarstellung eines BigInteger in einen BigInteger.

BigInteger(String, Int32)

Übersetzt die Zeichenfolgendarstellung eines BigInteger in das angegebene Radix in einen BigInteger.

Eigenschaften

Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
JniIdentityHashCode

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)
JniPeerMembers

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

LowestSetBit

Gibt den Index des kleinsten Bits (unterste Reihenfolge) in diesem BigInteger -Bit (die Anzahl der Nullbits rechts neben dem ganz rechts 1 Bit) zurück.

One

Die BigInteger-Konstante 1.

PeerReference

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)
Ten

Die BigInteger-Konstante 1.

ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

Two

Die BigInteger-Konstante 2.

Zero

Die BigInteger-Konstante Null.

Methoden

Abs()

Gibt einen BigInteger zurück, dessen Wert der absolute Wert dieses BigInteger ist.

Add(BigInteger)

Gibt einen BigInteger zurück, dessen Wert ist (this + val).

And(BigInteger)

Gibt einen BigInteger zurück, dessen Wert ist (this & val).

AndNot(BigInteger)

Gibt einen BigInteger zurück, dessen Wert ist (this & ~val).

BitCount()

Gibt die Anzahl der Bits in der Komplementdarstellung dieses BigInteger zurück, die sich von ihrem Zeichenbit unterscheiden.

BitLength()

Gibt die Anzahl der Bits in der minimalen Zwei-Komplementdarstellung dieses BigInteger-Werts zurück, <em>ausgeschlossen</em> ein Zeichenbit.

ByteValue()

Gibt den Wert der angegebenen Zahl als ein byte.

(Geerbt von Number)
ByteValueExact()

Wandelt dies BigInteger in eine byteÜberprüfung auf verlorene Informationen um.

ClearBit(Int32)

Gibt einen BigInteger zurück, dessen Wert diesem BigInteger entspricht, wobei das angegebene Bit gelöscht wird.

Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
CompareTo(BigInteger)

Vergleicht diesen BigInteger mit dem angegebenen BigInteger.

Dispose()

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)
Dispose(Boolean)

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)
Divide(BigInteger)

Gibt einen BigInteger zurück, dessen Wert ist (this / val).

DivideAndRemainder(BigInteger)

Gibt ein Array von zwei BigIntegers zurück, (this / val) die gefolgt von (this % val).

DoubleValue()

Wandelt diesen BigInteger in ein double.

Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
FlipBit(Int32)

Gibt einen BigInteger zurück, dessen Wert diesem BigInteger entspricht, wobei das angegebene Bit gekippt ist.

FloatValue()

Wandelt diesen BigInteger in ein float.

Gcd(BigInteger)

Gibt einen BigInteger zurück, dessen Wert der größte gemeinsame Divisor von abs(this) und abs(val).

GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
IntValue()

Wandelt diesen BigInteger in ein int.

IntValueExact()

Wandelt dies BigInteger in eine intÜberprüfung auf verlorene Informationen um.

IsProbablePrime(Int32)

Gibt zurück true , wenn dieser BigInteger wahrscheinlich primiert ist, false wenn es definitiv zusammengesetzt ist.

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind.

(Geerbt von Object)
LongValue()

Wandelt diesen BigInteger in ein long.

LongValueExact()

Wandelt dies BigInteger in eine longÜberprüfung auf verlorene Informationen um.

Max(BigInteger)

Gibt das Maximum dieser BigInteger und val.

Min(BigInteger)

Gibt das Minimum dieser BigInteger und val.

Mod(BigInteger)

Gibt einen BigInteger zurück, dessen Wert ist (this mod m).

ModInverse(BigInteger)

Gibt einen BigInteger zurück, dessen Wert sup-1<>/sup>mod m) ist(this<.

ModPow(BigInteger, BigInteger)

Gibt einen BigInteger zurück, dessen Wert ist (this<sup>exponent</sup> mod m).

Multiply(BigInteger)

Gibt einen BigInteger zurück, dessen Wert ist (this * val).

Negate()

Gibt einen BigInteger zurück, dessen Wert ist (-this).

NextProbablePrime()

Gibt die erste ganze Zahl zurück, die größer ist als dies BigInteger wahrscheinlich prime.

Not()

Gibt einen BigInteger zurück, dessen Wert ist (~this).

Notify()

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
Or(BigInteger)

Gibt einen BigInteger zurück, dessen Wert ist (this | val).

Pow(Int32)

Gibt einen BigInteger zurück, dessen Wert ist (this<sup>exponent</sup>).

ProbablePrime(Int32, Random)

Gibt einen positiven BigInteger zurück, der wahrscheinlich primiert ist, mit dem angegebenen BitLength.

Remainder(BigInteger)

Gibt einen BigInteger zurück, dessen Wert ist (this % val).

SetBit(Int32)

Gibt einen BigInteger zurück, dessen Wert diesem BigInteger mit dem festgelegten Bitsatz entspricht.

SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
ShiftLeft(Int32)

Gibt einen BigInteger zurück, dessen Wert ist (this << n).

ShiftRight(Int32)

Gibt einen BigInteger zurück, dessen Wert ist (this >> n).

ShortValue()

Gibt den Wert der angegebenen Zahl als ein short.

(Geerbt von Number)
ShortValueExact()

Wandelt dies BigInteger in eine shortÜberprüfung auf verlorene Informationen um.

Signum()

Gibt die Signumfunktion dieses BigInteger zurück.

Sqrt()

Gibt die ganzzahlige Quadratwurzel dieses BigInteger zurück.

SqrtAndRemainder()

Gibt ein Array von zwei BigIntegers zurück, die die ganzzahlige Quadratwurzel s this bzw. den Rest enthalten this - s*s.

Subtract(BigInteger)

Gibt einen BigInteger zurück, dessen Wert ist (this - val).

TestBit(Int32)

Gibt nur true zurück, wenn das festgelegte Bit festgelegt ist.

ToArray<T>()

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)
ToByteArray()

Gibt ein Bytearray zurück, das die Zwei-Komplementdarstellung dieses BigInteger enthält.

ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
ToString(Int32)

Gibt die Zeichenfolgendarstellung dieses BigInteger in der angegebenen Radix zurück.

UnregisterFromRuntime()

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)
ValueOf(Int64)

Gibt einen BigInteger zurück, dessen Wert dem des angegebenen longWerts entspricht.

Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em> oder <em>unterbrochen</em>.<><

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Xor(BigInteger)

Gibt einen BigInteger zurück, dessen Wert ist (this ^ val).

Explizite Schnittstellenimplementierungen

IComparable.CompareTo(Object)

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

IJavaPeerable.Disposed()

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)
IJavaPeerable.DisposeUnlessReferenced()

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)
IJavaPeerable.Finalized()

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)
IJavaPeerable.JniManagedPeerState

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

(Geerbt von Object)

Erweiterungsmethoden

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

GetJniTypeName(IJavaPeerable)

Unveränderliche Ganzzahlen mit beliebiger Genauigkeit.

Gilt für: