Bagikan melalui


BigInteger.Compare(BigInteger, BigInteger) Metode

Definisi

Membandingkan dua BigInteger nilai dan mengembalikan bilangan bulat yang menunjukkan apakah nilai pertama kurang dari, sama dengan, atau lebih besar dari nilai kedua.

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

Parameter

left
BigInteger

Nilai pertama yang dibandingkan.

right
BigInteger

Nilai kedua untuk dibandingkan.

Mengembalikan

Bilangan bulat bertanda tangan yang menunjukkan nilai left relatif dan right, seperti yang diperlihatkan dalam tabel berikut.

Nilai Kondisi
Kurang dari nol left kurang dari right.
Nol left sama dengan right.
Lebih besar dari nol left lebih besar dari right.

Keterangan

BigInteger Meskipun jenis tidak memiliki rentang tetap, perbandingan BigInteger nilai tidak ditandai dengan kurangnya presisi yang mencirikan perbandingan angka floating-point. Contoh berikut membandingkan dua BigInteger nilai yang berbeda satu per satu dan masing-masing memiliki 1.896 digit. Metode ini Compare melaporkan dengan benar bahwa kedua nilai tersebut tidak sama.

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
let number1 = BigInteger.Pow(int64 System.Int64.MaxValue, 100)
let number2 = number1 + 1I
let relation = 
    match BigInteger.Compare(number1, number2) with
    | -1 -> "<"
    | 0 -> "="
    | 1 | _ -> ">"

printfn $"{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

Berlaku untuk

Lihat juga