BigInteger.Compare(BigInteger, BigInteger) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Vergelijkt twee BigInteger waarden en retourneert een geheel getal dat aangeeft of de eerste waarde kleiner is dan, gelijk is aan of groter is dan de tweede waarde.
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
Parameters
- left
- BigInteger
De eerste waarde die moet worden vergeleken.
- right
- BigInteger
De tweede waarde die moet worden vergeleken.
Retouren
Een ondertekend geheel getal dat de relatieve waarden van left en right, zoals wordt weergegeven in de volgende tabel, aangeeft.
| Waarde | Conditie |
|---|---|
| Kleiner dan nul |
left is kleiner dan right.
|
| Nul |
left is rightgelijk aan .
|
| Groter dan nul |
left is groter dan right.
|
Opmerkingen
Hoewel het BigInteger type geen vast bereik heeft, worden vergelijkingen van BigInteger waarden niet gekenmerkt door het gebrek aan precisie dat de vergelijking van drijvendekommage getallen aangeeft. In het volgende voorbeeld worden twee BigInteger waarden vergeleken die met één verschillen en die elk 1896 cijfers hebben. De Compare methode rapporteert correct dat de twee waarden niet gelijk zijn.
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