Partage via


BigInteger.Multiply(BigInteger, BigInteger) Méthode

Définition

Retourne le produit de deux valeurs BigInteger.

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

Paramètres

left
BigInteger

Premier nombre à multiplier.

right
BigInteger

Second nombre à multiplier.

Retours

Produit des paramètres left et right.

Exemples

L’exemple suivant tente d’effectuer une multiplication avec deux entiers longs. Étant donné que le résultat dépasse la plage d’un entier long, un OverflowException est levée et la Multiply méthode est appelée pour gérer la multiplication. Notez que C# nécessite que vous utilisiez le checked mot clé (comme dans cet exemple) ou l’option du /checked+ compilateur pour vous assurer qu’une exception est levée sur un dépassement de capacité numérique.

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

Remarques

La Multiply méthode est implémentée pour les langages qui ne prennent pas en charge la surcharge de l’opérateur. Son comportement est identique à celui de la multiplication à l’aide de l’opérateur de multiplication. En outre, la Multiply méthode est un substitut utile pour l’opérateur de multiplication lors de l’instanciation d’une BigInteger variable en lui affectant un produit qui résulte de la multiplication, comme illustré dans l’exemple suivant.

// 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)

Si nécessaire, cette méthode effectue automatiquement la conversion implicite d’autres types intégraux en BigInteger objets. Cela est illustré dans l’exemple de la section suivante, où la Multiply méthode est passée à deux Int64 valeurs.

S’applique à

Voir aussi