BigInteger Kelas

Definisi

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

[Android.Runtime.Register("java/math/BigInteger", DoNotGenerateAcw=true)]
public class BigInteger : Java.Lang.Number, IDisposable, 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
Warisan
Atribut
Penerapan

Keterangan

Bilangan bulat presisi arbitrer yang tidak dapat diubah. Semua operasi berperilaku seolah-olah BigIntegers diwakili dalam notasi dua pelengkap (seperti jenis bilangan bulat primitif Java). BigInteger menyediakan analog untuk semua operator bilangan bulat primitif Java, dan semua metode yang relevan dari java.lang.Math. Selain itu, BigInteger menyediakan operasi untuk aritmatika modular, perhitungan GCD, pengujian primalitas, pembuatan utama, manipulasi bit, dan beberapa operasi lain-lain.

Semantik operasi aritmatika persis meniru operator aritmatika bilangan bulat Java, seperti yang didefinisikan dalam Spesifikasi Bahasa Java. Misalnya, pembagian dengan nol melempar ArithmeticException, dan pembagian negatif oleh hasil positif menghasilkan sisa negatif (atau nol).

Semantik operasi shift memperluas operator shift Java untuk memungkinkan jarak shift negatif. Pergeseran kanan dengan jarak pergeseran negatif menghasilkan shift kiri, dan sebaliknya. Operator shift kanan yang tidak ditandatangani (>>>) dihilangkan karena operasi ini hanya masuk akal untuk kata berukuran tetap dan bukan untuk representasi yang secara konseptual memiliki jumlah bit tanda virtual terkemuka yang tak terbatas.

Semantik operasi logis bitwise persis meniru operator bilangan bulat bitwise Java. Operator biner (and, or, xor) secara implisit melakukan ekstensi tanda tangan pada lebih pendek dari dua operand sebelum melakukan operasi.

Operasi perbandingan melakukan perbandingan bilangan bulat yang ditandatangani, dianalogikan dengan yang dilakukan oleh operator relasional dan kesetaraan Java.

Operasi aritmatika modular disediakan untuk menghitung residu, melakukan eksponensiasi, dan menghitung inversi multiplikatif. Metode ini selalu mengembalikan hasil non-negatif, antara 0 dan (modulus - 1), inklusif.

Operasi bit beroperasi pada satu bit representasi dua pelengkap dari operand mereka. Jika perlu, operand diperluas tanda sehingga berisi bit yang ditunjuk. Tidak satu pun dari operasi bit tunggal dapat menghasilkan BigInteger dengan tanda yang berbeda dari BigInteger yang dioperasikan, karena hanya memengaruhi satu bit, dan abstraksi besar yang disediakan oleh kelas ini memastikan bahwa secara konseptual ada banyak "bit tanda virtual" yang mendahului setiap BigInteger.

Demi kejelasan dan kejelasan, pseudo-code digunakan di seluruh deskripsi metode BigInteger. Ekspresi (i + j) pseudo-code adalah singkatan dari "BigInteger yang nilainya adalah BigInteger i ditambah bigInteger j." Ekspresi (i == j) pseudo-code singkatan untuk "true jika dan hanya jika BigInteger i mewakili nilai yang sama dengan BigInteger j." Ekspresi kode semu lainnya ditafsirkan sama.

Semua metode dan konstruktor dalam kelas ini melempar NullPointerException ketika melewati referensi objek null untuk parameter input apa pun.

BigInteger harus mendukung nilai dalam rentang -2<sup>Integer.MAX_VALUE</sup> (eksklusif) hingga +2<sup>Integer.MAX_VALUE</sup> (eksklusif) dan dapat mendukung nilai di luar rentang tersebut.

Dilemparkan ArithmeticException ketika konstruktor atau metode BigInteger akan menghasilkan nilai di luar rentang yang didukung.

Rentang nilai utama yang mungkin terbatas dan mungkin kurang dari rentang positif penuh yang didukung dari BigInteger. Rentang harus setidaknya 1 hingga 2<sup>500000000</sup>.

Ditambahkan dalam 1.1.

Java dokumentasi untuk java.math.BigInteger.

Bagian dari halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Android Open Source Project dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Creative Commons 2.5 Lisensi Atribusi.

Konstruktor

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

Menerjemahkan sub-array byte yang berisi representasi biner pelengkap dua dari BigInteger ke dalam BigInteger.

BigInteger(Byte[])

Menerjemahkan array byte yang berisi representasi biner pelengkap dua dari BigInteger ke dalam BigInteger.

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

Menerjemahkan representasi besaran tanda dari BigInteger ke dalam BigInteger.

BigInteger(Int32, Byte[])

Menerjemahkan representasi besaran tanda dari BigInteger ke dalam BigInteger.

BigInteger(Int32, Int32, Random)

Membuat BigInteger positif yang dihasilkan secara acak yang mungkin prima, dengan bitLength yang ditentukan.

BigInteger(Int32, Random)

Membangun BigInteger yang dihasilkan secara acak, didistribusikan secara seragam selama rentang 0 hingga (2<sup>numBits</sup> - 1), inklusif.

BigInteger(IntPtr, JniHandleOwnership)

Konstruktor yang digunakan saat membuat representasi terkelola objek JNI; dipanggil oleh runtime.

BigInteger(String, Int32)

Menerjemahkan representasi String dari BigInteger dalam radix yang ditentukan ke dalam BigInteger.

BigInteger(String)

Menerjemahkan representasi String desimal dari BigInteger ke dalam BigInteger.

Properti

Nama Deskripsi
Class

Mengembalikan kelas runtime dari .Object

(Diperoleh dari Object)
Handle

Handel ke instans Android yang mendasar.

(Diperoleh dari Object)
JniIdentityHashCode

Mendapatkan kode hash identitas yang ditetapkan ke Java peer ini oleh runtime interop.

(Diperoleh dari Object)
JniManagedPeerState

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

(Diperoleh dari JavaObject)
JniPeerMembers

Mendapatkan anggota serekan JNI untuk jenis ini.

LowestSetBit

Mengembalikan indeks satu bit paling kanan (urutan terendah) dalam BigInteger ini (jumlah bit nol di sebelah kanan satu bit paling kanan).

One

Konstanta BigInteger.

PeerReference

Mendapatkan referensi objek JNI untuk peer Java ini.

(Diperoleh dari Object)
Ten

Konstanta BigInteger sepuluh.

ThresholdClass

API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

ThresholdType

API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

Two

Konstanta BigInteger dua.

Zero

Konstanta BigInteger nol.

Metode

Nama Deskripsi
Abs()

Mengembalikan BigInteger yang nilainya adalah nilai absolut dari BigInteger ini.

Add(BigInteger)

Mengembalikan BigInteger yang nilainya adalah (this + val).

And(BigInteger)

Mengembalikan BigInteger yang nilainya adalah (this & val).

AndNot(BigInteger)

Mengembalikan BigInteger yang nilainya adalah (this & ~val).

BitCount()

Mengembalikan jumlah bit dalam representasi pelengkap keduanya dari BigInteger ini yang berbeda dari bit tandanya.

BitLength()

Mengembalikan jumlah bit dalam representasi pelengkap dua minimal dari BigInteger ini, <em>tidak termasuk</em> bit tanda.

ByteValue()

Mengembalikan nilai angka yang ditentukan sebagai byte.

(Diperoleh dari Number)
ByteValueExact()

Mengonversi ini BigInteger menjadi , memeriksa informasi yang bytehilang.

ClearBit(Int32)

Mengembalikan BigInteger yang nilainya setara dengan BigInteger ini dengan bit yang ditunjuk dihapus.

Clone()

Membuat dan mengembalikan salinan objek ini.

(Diperoleh dari Object)
CompareTo(BigInteger)

Membandingkan BigInteger ini dengan BigInteger yang ditentukan.

Construct(JniObjectReference, JniObjectReferenceOptions)

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

(Diperoleh dari JavaObject)
Dispose()

Merilis sumber daya yang dipegang oleh rekan Java ini.

(Diperoleh dari Object)
Dispose(Boolean)

Merilis sumber daya yang dipegang oleh rekan Java ini.

(Diperoleh dari Object)
DisposeUnlessReferenced()

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

(Diperoleh dari JavaObject)
Divide(BigInteger)

Mengembalikan BigInteger yang nilainya adalah (this / val).

DivideAndRemainder(BigInteger)

Mengembalikan array dari dua BigInteger yang berisi (this / val) diikuti oleh (this % val).

DoubleValue()

Mengonversi BigInteger ini menjadi double.

Equals(Object)

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

(Diperoleh dari JavaObject)
Equals(Object)

Menunjukkan apakah beberapa objek lain "sama dengan" yang satu ini.

(Diperoleh dari Object)
FlipBit(Int32)

Mengembalikan BigInteger yang nilainya setara dengan BigInteger ini dengan bit yang ditunjuk dibalik.

FloatValue()

Mengonversi BigInteger ini menjadi float.

Gcd(BigInteger)

Mengembalikan BigInteger yang nilainya adalah pembavisor umum terbesar dari abs(this) dan abs(val).

GetHashCode()

Mengembalikan nilai kode hash untuk objek .

(Diperoleh dari Object)
IntValue()

Mengonversi BigInteger ini menjadi int.

IntValueExact()

Mengonversi ini BigInteger menjadi , memeriksa informasi yang inthilang.

IsProbablePrime(Int32)

Mengembalikan true jika BigInteger ini mungkin prima, false jika itu pasti komposit.

JavaFinalize()

Dipanggil oleh pengumpul sampah pada objek ketika pengumpulan sampah menentukan bahwa tidak ada lagi referensi ke objek.

(Diperoleh dari Object)
LongValue()

Mengonversi BigInteger ini menjadi long.

LongValueExact()

Mengonversi ini BigInteger menjadi , memeriksa informasi yang longhilang.

Max(BigInteger)

Mengembalikan maksimum BigInteger ini dan val.

Min(BigInteger)

Mengembalikan minimum BigInteger ini dan val.

Mod(BigInteger)

Mengembalikan BigInteger yang nilainya adalah (this mod m).

ModInverse(BigInteger)

Mengembalikan BigInteger yang nilainya sup-1(this<></sup.>mod m)

ModPow(BigInteger, BigInteger)

Mengembalikan BigInteger yang nilainya adalah (this<sup>exponent</sup> mod m).

Multiply(BigInteger)

Mengembalikan BigInteger yang nilainya adalah (this * val).

Negate()

Mengembalikan BigInteger yang nilainya adalah (-this).

NextProbablePrime()

Mengembalikan bilangan bulat pertama yang lebih besar dari ini BigInteger yang mungkin prima.

Not()

Mengembalikan BigInteger yang nilainya adalah (~this).

Notify()

Membangunkan satu utas yang menunggu monitor objek ini.

(Diperoleh dari Object)
NotifyAll()

Membangunkan semua utas yang menunggu monitor objek ini.

(Diperoleh dari Object)
Or(BigInteger)

Mengembalikan BigInteger yang nilainya adalah (this | val).

Pow(Int32)

Mengembalikan BigInteger yang nilainya adalah (this<sup>exponent</sup>).

ProbablePrime(Int32, Random)

Mengembalikan BigInteger positif yang mungkin prima, dengan bitLength yang ditentukan.

Remainder(BigInteger)

Mengembalikan BigInteger yang nilainya adalah (this % val).

SetBit(Int32)

Mengembalikan BigInteger yang nilainya setara dengan BigInteger ini dengan set bit yang ditunjuk.

SetHandle(IntPtr, JniHandleOwnership)

Mengatur properti Handle.

(Diperoleh dari Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

(Diperoleh dari JavaObject)
ShiftLeft(Int32)

Mengembalikan BigInteger yang nilainya adalah (this << n).

ShiftRight(Int32)

Mengembalikan BigInteger yang nilainya adalah (this >> n).

ShortValue()

Mengembalikan nilai angka yang ditentukan sebagai short.

(Diperoleh dari Number)
ShortValueExact()

Mengonversi ini BigInteger menjadi , memeriksa informasi yang shorthilang.

Signum()

Mengembalikan fungsi signum dari BigInteger ini.

Sqrt()

Mengembalikan akar kuadrat bilangan bulat dari BigInteger ini.

SqrtAndRemainder()

Mengembalikan array dari dua BigInteger yang masing-masing berisi akar kuadrat bilangan s bulat this dan sisanyathis - s*s.

Subtract(BigInteger)

Mengembalikan BigInteger yang nilainya adalah (this - val).

TestBit(Int32)

Mengembalikan true jika dan hanya jika bit yang ditunjuk diatur.

ToArray<T>()

Membuat array terkelola dari pembungkus array Java ini.

(Diperoleh dari Object)
ToByteArray()

Mengembalikan array byte yang berisi representasi dua pelengkap dari BigInteger ini.

ToString()

Mengembalikan representasi string objek.

(Diperoleh dari Object)
ToString(Int32)

Mengembalikan representasi String dari BigInteger ini dalam radiks yang diberikan.

UnregisterFromRuntime()

Membatalkan pendaftaran peer Java ini dari runtime interop.

(Diperoleh dari Object)
ValueOf(Int64)

Mengembalikan BigInteger yang nilainya sama dengan yang ditentukan long.

Wait()

Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <diberitahu></em> atau <em>terganggu</em>.

(Diperoleh dari Object)
Wait(Int64, Int32)

Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <>diberitahu</em> atau <em>terganggu</em>, atau sampai sejumlah waktu nyata berlalu.

(Diperoleh dari Object)
Wait(Int64)

Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <>diberitahu</em> atau <em>terganggu</em>, atau sampai sejumlah waktu nyata berlalu.

(Diperoleh dari Object)
Xor(BigInteger)

Mengembalikan BigInteger yang nilainya adalah (this ^ val).

Implementasi Antarmuka Eksplisit

Nama Deskripsi
IComparable.CompareTo(Object)

Membandingkan nilai ini dengan objek yang ditentukan.

IJavaPeerable.Disposed()

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

(Diperoleh dari JavaObject)
IJavaPeerable.Finalized()

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

(Diperoleh dari JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

(Diperoleh dari JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

(Diperoleh dari JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

(Diperoleh dari JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

(Diperoleh dari JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

Metode Ekstensi

Nama Deskripsi
GetJniTypeName(IJavaPeerable)

Mendapatkan nama JNI dari jenis instans self.

JavaAs<TResult>(IJavaPeerable)

Cobalah untuk memaksa self untuk mengetik TResult, memeriksa bahwa paksaan valid di sisi Java.

JavaCast<TResult>(IJavaObject)

Melakukan konversi jenis yang diperiksa runtime Android.

JavaCast<TResult>(IJavaObject)

Bilangan bulat presisi arbitrer yang tidak dapat diubah.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Cobalah untuk memaksa self untuk mengetik TResult, memeriksa bahwa paksaan valid di sisi Java.

Berlaku untuk