BigInteger.Compare(BigInteger, BigInteger) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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