BigInteger.Compare(BigInteger, BigInteger) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Vergleicht zwei BigInteger-Werte und gibt eine ganze Zahl zurück, die angibt, ob der erste Wert kleiner oder größer als der zweite Wert oder gleich dem zweiten Wert ist.
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
Der erste zu vergleichende Wert.
- right
- BigInteger
Der zweite zu vergleichende Wert.
Gibt zurück
Eine ganze Zahl mit Vorzeichen, die die relativen Werte von left
und right
angibt, wie in der folgenden Tabelle veranschaulicht.
Wert | Bedingung |
---|---|
Kleiner als 0 (null) |
left ist kleiner als right .
|
Zero |
left ist gleich right .
|
Größer als 0 (null) |
left ist größer als right .
|
Hinweise
Obwohl der BigInteger Typ keinen festen Bereich aufweist, sind Vergleiche von BigInteger Werten nicht durch die fehlende Genauigkeit gekennzeichnet, die den Vergleich von Gleitkommazahlen kennzeichnet. Im folgenden Beispiel werden zwei BigInteger Werte verglichen, die sich um einen unterscheiden und die jeweils 1.896 Ziffern aufweisen. Die Compare -Methode meldet ordnungsgemäß, dass die beiden Werte ungleich sind.
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