BigInteger.Compare(BigInteger, BigInteger) BigInteger.Compare(BigInteger, BigInteger) BigInteger.Compare(BigInteger, BigInteger) BigInteger.Compare(BigInteger, BigInteger) Method

정의

BigInteger 값을 비교하고 첫 번째 값이 두 번째 값보다 작은지, 같은지 또는 큰지를 나타내는 정수를 반환합니다.Compares two BigInteger values and returns an integer that indicates whether the first value is less than, equal to, or greater than the second value.

public:
 static int Compare(System::Numerics::BigInteger left, System::Numerics::BigInteger right);
public static int Compare (System.Numerics.BigInteger left, System.Numerics.BigInteger right);
static member Compare : System.Numerics.BigInteger * System.Numerics.BigInteger -> int
Public Shared Function Compare (left As BigInteger, right As BigInteger) As Integer

매개 변수

left
BigInteger BigInteger BigInteger BigInteger

비교할 첫 번째 값입니다.The first value to compare.

right
BigInteger BigInteger BigInteger BigInteger

비교할 두 번째 값입니다.The second value to compare.

반환

다음 표와 같이 leftright의 상대 값을 나타내는 부호 있는 정수입니다.A signed integer that indicates the relative values of left and right, as shown in the following table.

Value 조건Condition
0보다 작음Less than zero leftright보다 작은 경우left is less than right.
0Zero leftright와 같습니다.left equals right.
0보다 큼Greater than zero leftright보다 큰 경우left is greater than right.

설명

하지만 합니다 BigInteger 형식이 고정 된 범위를 비교 BigInteger 값 비교의 부동 소수점 숫자의 특징인 정밀도 부족 발생 하지 않습니다.Although the BigInteger type has no fixed range, comparisons of BigInteger values are not characterized by the lack of precision that characterizes the comparison of floating-point numbers. 다음 예제에서는 두 개의 비교 BigInteger 1896 자릿수를 갖는 하나 있고 각각 다른 값입니다.The following example compares two BigInteger values that differ by one and that each have 1,896 digits. Compare 메서드는 두 값이 같지 않은지 올바르게 보고 합니다.The Compare method correctly reports that the two values are not equal.

BigInteger number1 = BigInteger.Pow(Int64.MaxValue, 100);
BigInteger number2 = number1 + 1;
string relation = "";
switch (BigInteger.Compare(number1, number2))
{
   case -1:
      relation = "<";
      break;
   case 0:
      relation = "=";
      break;
   case 1:
      relation = ">";
      break;
}
Console.WriteLine("{0} {1} {2}", number1, relation, number2);
// The example displays the following output:
//    3.0829940252776347122742186219E+1896 < 3.0829940252776347122742186219E+1896
Dim number1 As BigInteger = BigInteger.Pow(Int64.MaxValue, 100)
Dim number2 As BigInteger = number1 + 1
Dim relation As String = ""
Select Case BigInteger.Compare(number1, number2)
   Case -1
      relation = "<"
   Case 0
      relation = "="
   Case 1
      relation = ">"
End Select            
Console.WriteLine("{0} {1} {2}", number1, relation, number2)
' The example displays the following output:
'    3.0829940252776347122742186219E+1896 < 3.0829940252776347122742186219E+1896

적용 대상

추가 정보