StrictMath クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
クラス StrictMath
には、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。
[Android.Runtime.Register("java/lang/StrictMath", DoNotGenerateAcw=true)]
public sealed class StrictMath : Java.Lang.Object
[<Android.Runtime.Register("java/lang/StrictMath", DoNotGenerateAcw=true)>]
type StrictMath = class
inherit Object
- 継承
- 属性
注釈
クラス StrictMath
には、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。
Java プログラムの移植性を確保するために、このパッケージの数値関数の一部の定義では、公開されている特定のアルゴリズムと同じ結果を生成する必要があります。 これらのアルゴリズムは、既知のネットワーク ライブラリ netlib
からパッケージ "Freely Distributable Math Library, " fdlibm
https://www.netlib.org/fdlibm/として入手できます。 C プログラミング言語で記述されたこれらのアルゴリズムは、Java 浮動小数点演算の規則に従って、すべての浮動小数点演算で実行されると認識されます。
Java 数学ライブラリは、バージョン 5.3 に関して fdlibm
定義されています。 関数に複数の定義 (などacos
) が用意されている場合fdlibm
は、"IEEE 754 コア関数" バージョンを使用します (名前が文字e
で始まるファイルに存在します)。 セマンティクスを必要とするfdlibm
メソッドはsin
、、cos
、、tan
、asin
、、acos
、、atan
、、cbrt
log
atan2
pow
sinh
log10
exp
tanh
hypot
cosh
expm1
および log1p
です。
プラットフォームでは、int 型と long プリミティブ型を持つ符号付き 2 の補数整数算術が使用されます。 開発者は、プリミティブ型を選択して、算術演算で正しい結果が一貫して生成されるようにする必要があります。これは、場合によっては演算が計算の値の範囲をオーバーフローしないことを意味します。 ベスト プラクティスは、オーバーフローを回避するためにプリミティブ型とアルゴリズムを選択することです。 サイズが または でint
オーバーフロー エラーを検出する必要がある場合は、結果がオーバーフローしたときに、 メソッド addExact
、subtractExact
、multiplyExact
、 decrementExact
toIntExact
incrementExact
、 negateExact
がスロー ArithmeticException
long
されます。 算術演算の除算と絶対値の場合、オーバーフローは特定の最小値または最大値でのみ発生し、必要に応じて最小値または最大値に対してチェックする必要があります。
<h2>Ieee754RecommendedOps>IEEE 754 推奨操作</h2>
クラスでは java.lang.Math Math
、選択した Math
メソッドとメソッドの実装基準の共有品質が StrictMath
、IEEE 754 推奨される操作とどのように関連しているかについて説明します。
1.3 で追加されました。
の Java ドキュメント java.lang.StrictMath
。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
フィールド
E |
|
Pi |
円の |
プロパティ
Class |
この |
Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
JniIdentityHashCode |
クラス |
JniPeerMembers |
クラス |
PeerReference |
クラス |
ThresholdClass |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用することを意図したものではありません。 (継承元 Object) |
ThresholdType |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用することを意図したものではありません。 (継承元 Object) |
メソッド
Abs(Double) |
値の絶対値を |
Abs(Int32) |
値の絶対値を |
Abs(Int64) |
値の絶対値を |
Abs(Single) |
値の絶対値を |
AbsExact(Int32) |
値が として正確に表現可能な場合は、値の |
AbsExact(Int64) |
値が として正確に表現可能な場合は、値の |
Acos(Double) |
値のアーク コサインを返します。返される角度は 0 の範囲です。 |
AddExact(Int32, Int32) |
引数の合計を返し、結果が をオーバーフローした場合に例外を |
AddExact(Int64, Int64) |
引数の合計を返し、結果が をオーバーフローした場合に例外を |
Asin(Double) |
値のアークサインを返します。返される角度は、-pi/2 ~ pi/2 の範囲です。 |
Atan(Double) |
値のアークタンジェントを返します。返される角度は、-pi/2 ~ pi/2 の範囲です。 |
Atan2(Double, Double) |
四角形の座標 (, |
Cbrt(Double) |
値のキューブ ルートを |
Ceil(Double) |
引数以上で数学整数と等しい最小 (負の無限大に最も近い) |
Clone() |
このオブジェクトのコピーを作成して返します。 (継承元 Object) |
CopySign(Double, Double) |
2 番目の浮動小数点引数の符号を使用して、最初の浮動小数点引数を返します。 |
CopySign(Single, Single) |
2 番目の浮動小数点引数の符号を使用して、最初の浮動小数点引数を返します。 |
Cos(Double) |
角度の三角関数コサインを返します。 |
Cosh(Double) |
値の双曲線余弦を |
DecrementExact(Int32) |
引数を 1 ずつデクリメントして返し、結果が をオーバーフローした場合に例外を |
DecrementExact(Int64) |
1 ずつデクリメントされた引数を返し、結果が をオーバーフローした場合に例外を |
Dispose() |
クラス |
Dispose(Boolean) |
クラス |
Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
Exp(Double) |
値の累乗に引き上げられたオイラーの数値 e を |
Expm1(Double) |
e<sup>x</sup> -1 を返します。 |
Floor(Double) |
引数以下で数学整数と等しい最大 (正の無限大に最も近い) |
FloorDiv(Int32, Int32) |
代数商以下の最大 (正の無限大に最も近い) |
FloorDiv(Int64, Int32) |
代数商以下の最大 (正の無限大に最も近い) |
FloorDiv(Int64, Int64) |
代数商以下の最大 (正の無限大に最も近い) |
FloorMod(Int32, Int32) |
引数のフロア係数を |
FloorMod(Int64, Int32) |
引数と |
FloorMod(Int64, Int64) |
引数のフロア係数を |
Fma(Double, Double, Double) |
3 つの引数の乗算加算を返します。つまり、最初の 2 つの引数の正確な積を 3 番目の引数で合計し、最も近い |
Fma(Single, Single, Single) |
3 つの引数の乗算加算を返します。つまり、最初の 2 つの引数の正確な積を 3 番目の引数で合計し、最も近い |
GetExponent(Double) |
の表現 |
GetExponent(Single) |
の表現 |
GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
Hypot(Double, Double) |
中間オーバーフローまたはアンダーフローなしで sqrt(x<sup>2</sup> +y<sup>2</sup>) を返します。 |
IEEEremainder(Double, Double) |
IEEE 754 標準で規定されている 2 つの引数に対する剰余演算を計算します。 |
IncrementExact(Int32) |
引数を 1 ずつインクリメントして返し、結果が をオーバーフローした場合に例外を |
IncrementExact(Int64) |
引数を 1 ずつインクリメントして返し、結果が をオーバーフローした場合に例外を |
JavaFinalize() |
ガベージ コレクションがオブジェクトへの参照がなくなったと判断したときに、オブジェクトのガベージ コレクターによって呼び出されます。 (継承元 Object) |
Log(Double) |
値の自然対数 (底 e) を |
Log10(Double) |
値の底 10 の対数を |
Log1p(Double) |
引数と 1 の合計の自然対数を返します。 |
Max(Double, Double) |
2 つの |
Max(Int32, Int32) |
2 つの |
Max(Int64, Int64) |
2 つの |
Max(Single, Single) |
2 つの |
Min(Double, Double) |
2 つの |
Min(Int32, Int32) |
2 つの |
Min(Int64, Int64) |
2 つの |
Min(Single, Single) |
2 つの |
MultiplyExact(Int32, Int32) |
引数の積を返し、結果が をオーバーフローした場合に例外を |
MultiplyExact(Int64, Int32) |
引数の積を返し、結果が をオーバーフローした場合に例外を |
MultiplyExact(Int64, Int64) |
引数の積を返し、結果が をオーバーフローした場合に例外を |
MultiplyFull(Int32, Int32) |
引数の正確な数学的積を返します。 |
MultiplyHigh(Int64, Int64) |
2 つの 64 ビット因子の 128 ビット積の最も重要な 64 ビットとして |
NegateExact(Int32) |
引数の否定を返し、結果が をオーバーフローした場合に例外を |
NegateExact(Int64) |
引数の否定を返し、結果が をオーバーフローした場合に例外を |
NextAfter(Double, Double) |
1 番目の引数に隣接する浮動小数点数を、2 番目の引数の方向に返します。 |
NextAfter(Single, Double) |
1 番目の引数に隣接する浮動小数点数を、2 番目の引数の方向に返します。 |
NextDown(Double) |
に隣接 |
NextDown(Single) |
に隣接 |
NextUp(Double) |
に隣接 |
NextUp(Single) |
に隣接 |
Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドをウェイクアップします。 (継承元 Object) |
NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドをウェイクアップします。 (継承元 Object) |
Pow(Double, Double) |
2 番目の引数の累乗に対して発生した最初の引数の値を返します。 |
Random() |
|
Rint(Double) |
引数に |
Round(Double) |
引数に最も近い |
Round(Single) |
引数に最も近い |
Scalb(Double, Int32) |
正しく丸められた単一の |
Scalb(Single, Int32) |
正しく丸められた単一の |
SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
Signum(Double) |
引数の signum 関数を返します。引数が 0 の場合は 0、1。 |
Signum(Single) |
引数の signum 関数を返します。引数が 0 の場合は 0、1。 |
Sin(Double) |
角度の三角関数サインを返します。 |
Sinh(Double) |
値の双曲線正弦を |
Sqrt(Double) |
値の正に丸められた正の平方根を |
SubtractExact(Int32, Int32) |
引数の差を返し、結果が をオーバーフローした場合に例外を |
SubtractExact(Int64, Int64) |
引数の差を返し、結果が をオーバーフローした場合に例外を |
Tan(Double) |
角度の三角正接を返します。 |
Tanh(Double) |
値の双曲線正接を |
ToArray<T>() |
クラス |
ToDegrees(Double) |
ラジアン単位で測定された角度を、度単位で測定されたほぼ同等の角度に変換します。 |
ToIntExact(Int64) |
引数の値を返し、値が |
ToRadians(Double) |
度単位の角度をラジアンで測定したほぼ等価の角度に変換します。 |
ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
Ulp(Double) |
引数の ulp のサイズを返します。 |
Ulp(Single) |
引数の ulp のサイズを返します。 |
UnregisterFromRuntime() |
クラス |
Wait() |
現在のスレッドが起動するまで待機します。通常<>は、通知</em> または <em>割り込み</em によって待機します>。 (継承元 Object) |
Wait(Int64) |
現在のスレッドが起動するまで待機します。通常<>は、通知</em> または>< em 割り込み</em>、または一定のリアルタイムが経過するまで待機します。 (継承元 Object) |
Wait(Int64, Int32) |
現在のスレッドが起動するまで待機します。通常<>は、通知</em> または>< em 割り込み</em>、または一定のリアルタイムが経過するまで待機します。 (継承元 Object) |
明示的なインターフェイスの実装
IJavaPeerable.Disposed() |
クラス |
IJavaPeerable.DisposeUnlessReferenced() |
クラス |
IJavaPeerable.Finalized() |
クラス |
IJavaPeerable.JniManagedPeerState |
クラス |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
クラス |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
クラス |
IJavaPeerable.SetPeerReference(JniObjectReference) |
クラス |
拡張メソッド
JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
JavaCast<TResult>(IJavaObject) |
クラス |
GetJniTypeName(IJavaPeerable) |
クラス |