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의 정수 산술 연산자의 의미 체계를 정확히 모방합니다. 예를 들어 0으로 나누면 가 throw ArithmeticException되고 음수가 양수로 나누면 나머지가 음수(또는 0)가 생성됩니다.

시프트 작업의 의미 체계는 음의 교대 근무 거리를 허용하도록 Java의 시프트 연산자의 의미 체계를 확장합니다. 음수 시프트 거리가 있는 오른쪽 시프트는 왼쪽 시프트가 발생하며 그 반대의 경우도 마찬가지입니다. 부호 없는 오른쪽 시프트 연산자(>>>)는 고정된 크기의 단어에만 적합하며 개념적으로 선행 가상 기호 비트가 무한수인 표현에만 적합하기 때문에 생략됩니다.

비트 논리 연산의 의미 체계는 Java의 비트 정수 연산자의 의미 체계를 정확히 모방합니다. 이진 연산자(and, or, xor)는 작업을 수행하기 전에 두 피연산자의 짧은 부분에 대해 암시적으로 기호 확장을 수행합니다.

비교 작업은 Java의 관계형 및 같음 연산자가 수행하는 것과 유사하게 부가적인 정수 비교를 수행합니다.

모듈식 산술 연산은 잔류물을 계산하고, 지수를 수행하고, 곱셈 역을 계산하기 위해 제공됩니다. 이러한 메서드는 항상 및 사이에 0 음수가 아닌 결과를 반환합니다 (modulus - 1)( 포함).

비트 작업은 피연산자의 두 개의 보수 표현의 단일 비트에서 작동합니다. 필요한 경우 피연산자는 지정된 비트를 포함하도록 기호 확장됩니다. 단일 비트 작업 중 어느 것도 단일 비트에만 영향을 주므로 작동 중인 BigInteger와 다른 기호가 있는 BigInteger를 생성할 수 없으며, 이 클래스에서 제공하는 임의로 큰 추상화는 개념적으로 각 BigInteger 앞에 무한히 많은 "가상 기호 비트"가 있음을 보장합니다.

간결하고 명확성을 위해 의사 코드는 BigInteger 메서드에 대한 설명 전체에서 사용됩니다. 의사 코드 식 (i + j) 은 "BigInteger의 값과 BigInteger의 값인 BigInteger ij"의 약어입니다. 의사 코드 식 (i == j) 은 BigInteger가 BigInteger ij와 동일한 값을 나타내는 경우에만 "true에 대한 약어입니다." 다른 의사 코드 식도 비슷하게 해석됩니다.

이 클래스의 모든 메서드 및 생성자는 입력 매개 변수에 대해 null 개체 참조를 전달할 때 throw NullPointerException 됩니다.

BigInteger는 -2 sup/sup(배타적)에서 +2<<sup>Integer.MAX_VALUE<Integer.MAX_VALUE<>/sup>>(배타적) 범위의 값을 지원해야 하며 해당 범위를 벗어난 값을 지원할 수 있습니다.

ArithmeticException BigInteger 생성자 또는 메서드가 지원되는 범위를 벗어나는 값을 생성할 때 이 throw됩니다.

가능한 소수 값의 범위는 제한되며 의 지원되는 전체 양수 범위 BigInteger보다 작을 수 있습니다. 범위는 1~2<sup>500000000</sup> 이상이어야 합니다.

1.1에 추가되었습니다.

에 대한 Java 설명서입니다 java.math.BigInteger.

이 페이지의 일부는 만들고 공유하며 에 설명된 용어에 따라 사용되는 작업을 기반으로 수정됩니다.

생성자

BigInteger(Byte[])

BigInteger의 두 개의 보수 이진 표현을 포함하는 바이트 배열을 BigInteger로 변환합니다.

BigInteger(Byte[], Int32, Int32)

BigInteger의 두 개의 보수 이진 표현을 포함하는 바이트 하위 배열을 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)

지정된 radix에서 BigInteger의 String 표현을 BigInteger로 변환합니다.

속성

Class

Object의 런타임 클래스를 반환합니다.

(다음에서 상속됨 Object)
Handle

기본 Android instance 대한 핸들입니다.

(다음에서 상속됨 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)

값이 인 BigInteger를 반환합니다 (this + val).

And(BigInteger)

값이 인 BigInteger를 반환합니다 (this & val).

AndNot(BigInteger)

값이 인 BigInteger를 반환합니다 (this & ~val).

BitCount()

부호 비트와 다른 이 BigInteger의 두 보완 표현에 있는 비트 수를 반환합니다.

BitLength()

이 BigInteger<의 최소 두 개의 보수 표현에서 비트 수를 반환합니다(부호 비트 제외</em>>).

ByteValue()

지정된 숫자의 값을 로 반환합니다 byte.

(다음에서 상속됨 Number)
ByteValueExact()

손실 BigInteger 된 정보를 확인하는 로 byte변환합니다.

ClearBit(Int32)

지정된 비트가 지워진 이 BigInteger 값과 동일한 BigInteger를 반환합니다.

Clone()

이 개체의 복사본을 만들고 반환합니다.

(다음에서 상속됨 Object)
CompareTo(BigInteger)

이 BigInteger와 지정된 BigInteger를 비교합니다.

Dispose()

변경할 수 없는 임의 정밀도 정수입니다.

(다음에서 상속됨 Object)
Dispose(Boolean)

변경할 수 없는 임의 정밀도 정수입니다.

(다음에서 상속됨 Object)
Divide(BigInteger)

값이 인 BigInteger를 반환합니다 (this / val).

DivideAndRemainder(BigInteger)

뒤에 가 (this % val)포함된 두 BigIntegers의 배열을 (this / val) 반환합니다.

DoubleValue()

이 BigInteger를 로 double변환합니다.

Equals(Object)

다른 개체가 이 개체와 "같음"인지 여부를 나타냅니다.

(다음에서 상속됨 Object)
FlipBit(Int32)

지정된 비트가 대칭 이동된 이 BigInteger 값과 동일한 BigInteger를 반환합니다.

FloatValue()

이 BigInteger를 로 float변환합니다.

Gcd(BigInteger)

값이 및 의 가장 큰 공통 수수인 BigInteger를 abs(this) 반환합니다 abs(val).

GetHashCode()

개체의 해시 코드 값을 반환합니다.

(다음에서 상속됨 Object)
IntValue()

이 BigInteger를 로 int변환합니다.

IntValueExact()

손실 BigInteger 된 정보를 확인하는 로 int변환합니다.

IsProbablePrime(Int32)

이 BigInteger가 확실히 복합인 경우 이 BigInteger가 소수 false 이면 를 반환 true 합니다.

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)

값이 인 BigInteger를 반환합니다 (this<sup>exponent</sup> mod m).

Multiply(BigInteger)

값이 인 BigInteger를 반환합니다 (this * val).

Negate()

값이 인 BigInteger를 반환합니다 (-this).

NextProbablePrime()

이보다 BigInteger 큰 첫 번째 정수(소수)를 반환합니다.

Not()

값이 인 BigInteger를 반환합니다 (~this).

Notify()

이 개체의 모니터에서 대기 중인 단일 스레드를 해제합니다.

(다음에서 상속됨 Object)
NotifyAll()

이 개체의 모니터에서 대기 중인 모든 스레드를 해제합니다.

(다음에서 상속됨 Object)
Or(BigInteger)

값이 인 BigInteger를 반환합니다 (this | val).

Pow(Int32)

값이 인 BigInteger를 반환합니다 (this<sup>exponent</sup>).

ProbablePrime(Int32, Random)

지정된 bitLength를 사용하여 소수일 수 있는 양의 BigInteger를 반환합니다.

Remainder(BigInteger)

값이 인 BigInteger를 반환합니다 (this % val).

SetBit(Int32)

값이 지정된 비트 집합이 있는 이 BigInteger와 동일한 BigInteger를 반환합니다.

SetHandle(IntPtr, JniHandleOwnership)

Handle 속성을 설정합니다.

(다음에서 상속됨 Object)
ShiftLeft(Int32)

값이 인 BigInteger를 반환합니다 (this << n).

ShiftRight(Int32)

값이 인 BigInteger를 반환합니다 (this >> n).

ShortValue()

지정된 숫자의 값을 로 반환합니다 short.

(다음에서 상속됨 Number)
ShortValueExact()

손실 BigInteger 된 정보를 확인하는 로 short변환합니다.

Signum()

이 BigInteger의 기호 함수를 반환합니다.

Sqrt()

이 BigInteger의 정수 제곱근을 반환합니다.

SqrtAndRemainder()

의 정수 제곱근 s 과 나머지 this - s*s를 각각 포함하는 두 BigIntegers의 this 배열을 반환합니다.

Subtract(BigInteger)

값이 인 BigInteger를 반환합니다 (this - val).

TestBit(Int32)

지정된 비트가 설정된 경우에만 및 를 반환 true 합니다.

ToArray<T>()

변경할 수 없는 임의 정밀도 정수입니다.

(다음에서 상속됨 Object)
ToByteArray()

이 BigInteger의 두 개의 보수 표현을 포함하는 바이트 배열을 반환합니다.

ToString()

개체의 문자열 표현을 반환합니다.

(다음에서 상속됨 Object)
ToString(Int32)

지정된 radix에서 이 BigInteger의 String 표현을 반환합니다.

UnregisterFromRuntime()

변경할 수 없는 임의 정밀도 정수입니다.

(다음에서 상속됨 Object)
ValueOf(Int64)

값이 지정된 long의 값과 같은 BigInteger를 반환합니다.

Wait()

현재 스레드가 깨어날 때까지 대기하게 합니다( 일반적으로 <알림을 받><거나 <>중단/>em>)합니다<.

(다음에서 상속됨 Object)
Wait(Int64)

현재 스레드가 깨어날 때까지 대기하게 합니다. 일반적으로 <>알림을 받<거나 <중단</>내보내>>거나 일정량의 실시간이 경과할 때까지 대기합니다.

(다음에서 상속됨 Object)
Wait(Int64, Int32)

현재 스레드가 깨어날 때까지 대기하게 합니다. 일반적으로 <>알림을 받<거나 <중단</>내보내>>거나 일정량의 실시간이 경과할 때까지 대기합니다.

(다음에서 상속됨 Object)
Xor(BigInteger)

값이 인 BigInteger를 반환합니다 (this ^ val).

명시적 인터페이스 구현

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)

변경할 수 없는 임의 정밀도 정수입니다.

적용 대상