BigInteger.Multiply(BigInteger, BigInteger) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
2 つの 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
パラメーター
- left
- BigInteger
乗算対象の最初の数。
- right
- BigInteger
乗算対象の 2 番目の数。
戻り値
left
と right
の 2 つのパラメーターの積。
例
次の例では、2 つの長整数を使用して乗算を実行しようとします。 結果が長整数の範囲を超えるので、 OverflowException がスローされ、乗算を Multiply 処理するために メソッドが呼び出されます。 C# では、(この例のように) キーワード (keyword)または/checked+
コンパイラ オプションをchecked
使用して、数値オーバーフローで例外がスローされることを確認する必要があることに注意してください。
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
注釈
メソッドは Multiply 、演算子のオーバーロードをサポートしていない言語に対して実装されます。 その動作は、乗算演算子を使用した乗算と同じです。 さらに、 メソッドは、 Multiply 次の例に示すように、乗算の結果の積を代入して変数をインスタンス化 BigInteger するときに、乗算演算子の代わりに役立ちます。
// 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)
必要に応じて、このメソッドは他の整数型からオブジェクトへの暗黙的な変換を自動的に BigInteger 実行します。 これは、次のセクションの例で示されています。この例では、 メソッドに Multiply 2 つの Int64 値が渡されます。
適用対象
こちらもご覧ください
.NET