BigInteger.Multiply(BigInteger, BigInteger) Método

Definição

Retorna o produto de dois valores BigInteger.

C#
public static System.Numerics.BigInteger Multiply(System.Numerics.BigInteger left, System.Numerics.BigInteger right);

Parâmetros

left
BigInteger

O primeiro número a multiplicar.

right
BigInteger

O segundo número a multiplicar.

Retornos

O produto dos parâmetros left e right.

Exemplos

O exemplo a seguir tenta executar multiplicação com dois inteiros longos. Como o resultado excede o intervalo de um inteiro longo, um OverflowException é lançado e o Multiply método é chamado para lidar com a multiplicação. Observe que o C# exige que você use o checked palavra-chave (como neste exemplo) ou a opção do /checked+ compilador para garantir que uma exceção seja gerada em um estouro numérico.

C#
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());
   }

Comentários

O Multiply método é implementado para linguagens que não dão suporte à sobrecarga de operador. Seu comportamento é idêntico à multiplicação usando o operador de multiplicação. Além disso, o Multiply método é um substituto útil para o operador de multiplicação ao instanciar uma BigInteger variável atribuindo-lhe um produto resultante da multiplicação, conforme mostrado no exemplo a seguir.

C#
// 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);

Se necessário, esse método executa automaticamente a conversão implícita de outros tipos integrais em BigInteger objetos . Isso é ilustrado no exemplo na próxima seção, em que o Multiply método é passado dois Int64 valores.

Aplica-se a

Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Confira também