BigInteger.Compare(BigInteger, BigInteger) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Compare deux valeurs BigInteger et retourne un entier qui indique si la première valeur est inférieure, égale ou supérieure à la seconde valeur.
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
Paramètres
- left
- BigInteger
Première valeur à comparer.
- right
- BigInteger
Deuxième valeur à comparer.
Retours
Entier signé qui indique les valeurs relatives de left
et right
, comme indiqué dans le tableau suivant.
Value | Condition |
---|---|
Inférieure à zéro |
left est inférieur à right .
|
Zéro |
left est égal à right .
|
Supérieure à zéro |
left est supérieur à right .
|
Remarques
Bien que le BigInteger type n’ait pas de plage fixe, les comparaisons de BigInteger valeurs ne sont pas caractérisées par le manque de précision qui caractérise la comparaison des nombres à virgule flottante. L’exemple suivant compare deux BigInteger valeurs qui diffèrent d’une et qui ont chacune 1 896 chiffres. La Compare méthode signale correctement que les deux valeurs ne sont pas égales.
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