Teilen über


BigInteger.Multiply(BigInteger, BigInteger) Methode

Definition

Gibt das Produkt der beiden BigInteger-Werte zurück.

public:
 static System::Numerics::BigInteger Multiply(System::Numerics::BigInteger left, System::Numerics::BigInteger right);
public static System.Numerics.BigInteger Multiply (System.Numerics.BigInteger left, System.Numerics.BigInteger right);
static member Multiply : System.Numerics.BigInteger * System.Numerics.BigInteger -> System.Numerics.BigInteger
Public Shared Function Multiply (left As BigInteger, right As BigInteger) As BigInteger

Parameter

left
BigInteger

Die erste zu multiplizierende Zahl.

right
BigInteger

Die zweite zu multiplizierende Zahl.

Gibt zurück

Das Produkt des left-Parameters und des right-Parameters.

Beispiele

Im folgenden Beispiel wird versucht, eine Multiplikation mit zwei langen ganzen Zahlen durchzuführen. Da das Ergebnis den Bereich einer langen ganzen Zahl überschreitet, wird eine OverflowException ausgelöst, und die Multiply -Methode wird aufgerufen, um die Multiplikation zu behandeln. Beachten Sie, dass C# erfordert, dass Sie entweder die checked Schlüsselwort (keyword) (wie in diesem Beispiel) oder die /checked+ Compileroption verwenden, um sicherzustellen, dass bei einem numerischen Überlauf eine Ausnahme ausgelöst wird.

long number1 = 1234567890;
long number2 = 9876543210;
try
{
   long product;
   product = checked(number1 * number2);
}
catch (OverflowException)
{
   BigInteger product;
   product = BigInteger.Multiply(number1, number2);
   Console.WriteLine(product.ToString());
   }
let number1 = 1234567890L
let number2 = 9876543210L

try

    let product: int64 = Checked.(*) number1 number2
    ()
with :? OverflowException ->
    let product = BigInteger.Multiply(number1, number2)
    printfn $"{product}"
Dim number1 As Long = 1234567890
Dim number2 As Long = 9876543210
Try
   Dim product As Long
   product = number1 * number2
   Console.WriteLine(product.ToString("N0"))
Catch e As OverflowException
   Dim product As BigInteger
   product = BigInteger.Multiply(number1, number2)
   Console.WriteLine(product.ToString)
End Try

Hinweise

Die Multiply -Methode wird für Sprachen implementiert, die keine Operatorüberladung unterstützen. Sein Verhalten ist identisch mit der Multiplikation mit dem Multiplikationsoperator. Darüber hinaus ist die Multiply -Methode ein nützlicher Ersatz für den Multiplikationsoperator beim Instanziieren einer BigInteger Variablen durch Zuweisen eines Produkts, das aus der Multiplikation resultiert, wie im folgenden Beispiel gezeigt.

// The statement
//    BigInteger number = Int64.MaxValue * 3;
// produces compiler error CS0220: The operation overflows at compile time in checked mode.
// The alternative:
BigInteger number = BigInteger.Multiply(Int64.MaxValue, 3);
let number = BigInteger.Multiply(Int64.MaxValue, 3);
' The statement
'    Dim number As BigInteger = Int64.MaxValue * 3
' produces compiler error BC30439: Constant expression not representable in type 'Long'.
' The alternative:
Dim number As BigInteger = BigInteger.Multiply(Int64.MaxValue, 3)

Bei Bedarf führt diese Methode automatisch eine implizite Konvertierung anderer integraler Typen in BigInteger -Objekte durch. Dies wird im Beispiel im nächsten Abschnitt veranschaulicht, in dem der Multiply -Methode zwei Int64 Werte übergeben werden.

Gilt für:

Weitere Informationen