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 プログラムの移植性を確保するために、このパッケージ内の数値関数の一部の定義では、特定の公開されたアルゴリズムと同じ結果が生成される必要があります。 これらのアルゴリズムは、パッケージ "Freely Distributable Math Library" netlibとしてfdlibmhttps://www.netlib.org/fdlibm/よく知られているネットワーク ライブラリから入手できます。 C プログラミング言語で記述されたこれらのアルゴリズムは、Javaに表記変換され、算術の規則に従ってすべての浮動小数点演算と整数演算で実行Java理解されます。 表記変換では、次の変換が使用されます。
<ul><li>C での 64 ビット doubleの高半分と下位半分の設定は、{@code double から long} への Double#doubleToRawLongBits(double) と Double#longBitsToDouble(long) {@code long から double} へのビットごとの変換を実行するJava プラットフォーム メソッドを使用して表されます。
<li>C のunsigned int値は、Javaの符号付きint値にマップされ、同じテキスト操作の結果が異なる符号なしセマンティクスをレプリケートするための操作が更新されます。 たとえば、符号なし C 値の>>シフトは、符号付きJava値の>>>シフトに置き換えられます。 符号なし C 値 (<、 <=、 >、 >=) のサイズ比較は、 Integer#compareUnsigned(int, int) compareUnsignedに対する意味的に同等の呼び出しに置き換えられます。
</ul>
Java数学ライブラリは、fdlibm バージョン 5.3 に関して定義されています。
fdlibm関数に対して複数の定義 (acos など) を提供する場合は、"IEEE 754 コア関数" バージョンを使用します (名前が文字eで始まるファイルに存在します)。
fdlibmセマンティクスを必要とするメソッドは、sin、cos、tan、asin、acos、atan、explog、log10cbrt、atan2、pow、sinh、cosh、tanh、hypot、expm1、およびlog1pです。
プラットフォームでは、int 型と long プリミティブ型を持つ符号付き 2 の補数整数算術演算が使用されます。 開発者は、算術演算によって正しい結果が一貫して生成されるようにプリミティブ型を選択する必要があります。これは、場合によっては、演算が計算の値の範囲をオーバーフローしないことを意味します。 ベスト プラクティスは、オーバーフローを回避するためにプリミティブ型とアルゴリズムを選択することです。 サイズが int または long でオーバーフロー エラーを検出する必要がある場合、名前の末尾が Exact メソッドは、結果がオーバーフローしたときに ArithmeticException をスローします。
<h2>Ieee754RecommendedOps>IEEE 754 推奨される操作</h2>
java.lang.Math Math クラスでは、選択したMathメソッドと StrictMath メソッドの実装基準の共有品質が、IEEE 754 の推奨される操作とどのように関連しているかを説明します。
1.3 で追加されました。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
フィールド
| 名前 | 説明 |
|---|---|
| E |
自然対数の底 |
| Pi |
pi |
| Tau |
|
プロパティ
| 名前 | 説明 |
|---|---|
| Class |
この |
| Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
| JniIdentityHashCode |
相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。 (継承元 Object) |
| JniManagedPeerState |
|
| JniPeerMembers |
このJava ピアのメンバーを呼び出すために使用される JNI メタデータを取得します。 |
| PeerReference |
このJava ピアの JNI オブジェクト参照を取得します。 (継承元 Object) |
| 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) |
引数以上で数学整数と等しい最小 (負の無限大に最も近い) |
| CeilDiv(Int32, Int32) |
代数商以上の最小 (負の無限大に最も近い) |
| CeilDiv(Int64, Int32) |
代数商以上の最小 (負の無限大に最も近い) |
| CeilDiv(Int64, Int64) |
代数商以上の最小 (負の無限大に最も近い) |
| CeilDivExact(Int32, Int32) |
代数商以上の最小 (負の無限大に最も近い) |
| CeilDivExact(Int64, Int64) |
代数商以上の最小 (負の無限大に最も近い) |
| CeilMod(Int32, Int32) |
|
| CeilMod(Int64, Int32) |
|
| CeilMod(Int64, Int64) |
|
| Clamp(Double, Double, Double) |
最小値と最大値の間に収まるように値をクランプします。 |
| Clamp(Int64, Int32, Int32) |
最小値と最大値の間に収まるように値をクランプします。 |
| Clamp(Int64, Int64, Int64) |
最小値と最大値の間に収まるように値をクランプします。 |
| Clamp(Single, Single, Single) |
最小値と最大値の間に収まるように値をクランプします。 |
| Clone() |
このオブジェクトのコピーを作成して返します。 (継承元 Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
|
| CopySign(Double, Double) |
2 番目の浮動小数点引数の符号を持つ最初の浮動小数点引数を返します。 |
| CopySign(Single, Single) |
2 番目の浮動小数点引数の符号を持つ最初の浮動小数点引数を返します。 |
| Cos(Double) |
角度の三角コサインを返します。 |
| Cosh(Double) |
|
| DecrementExact(Int32) |
引数を 1 ずつデクリメントして返し、結果が |
| DecrementExact(Int64) |
引数を 1 ずつデクリメントして返し、結果が |
| Dispose() |
このJava ピアによって保持されているリソースを解放します。 (継承元 Object) |
| Dispose(Boolean) |
このJava ピアによって保持されているリソースを解放します。 (継承元 Object) |
| DisposeUnlessReferenced() |
|
| DivideExact(Int32, Int32) |
引数の商を返し、結果が |
| DivideExact(Int64, Int64) |
引数の商を返し、結果が |
| Equals(Object) |
|
| Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
| Exp(Double) |
値の累乗に引き上げられたオイラーの数値 |
| Expm1(Double) |
e<sup>x</sup>> を返します。--1。 |
| Floor(Double) |
引数以下で数学整数と等しい最大 (正の無限大に最も近い) |
| FloorDiv(Int32, Int32) |
代数商以下の最大 (正の無限大に最も近い) |
| FloorDiv(Int64, Int32) |
代数商以下の最大 (正の無限大に最も近い) |
| FloorDiv(Int64, Int64) |
代数商以下の最大 (正の無限大に最も近い) |
| FloorDivExact(Int32, Int32) |
代数商以下の最大 (正の無限大に最も近い) |
| FloorDivExact(Int64, Int64) |
代数商以下の最大 (正の無限大に最も近い) |
| FloorMod(Int32, Int32) |
|
| FloorMod(Int64, Int32) |
|
| FloorMod(Int64, Int64) |
|
| Fma(Double, Double, Double) |
3 つの引数の乗算加算を返します。つまり、3 番目の引数で合計された最初の 2 つの引数の正確な積を返し、最も近い |
| Fma(Single, Single, Single) |
3 つの引数の乗算加算を返します。つまり、3 番目の引数で合計された最初の 2 つの引数の正確な積を返し、最も近い |
| 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) |
値の自然対数 (底 |
| Log10(Double) |
|
| 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) |
2 番目の引数の方向の最初の引数に隣接する浮動小数点数を返します。 |
| NextAfter(Single, Double) |
2 番目の引数の方向の最初の引数に隣接する浮動小数点数を返します。 |
| NextDown(Double) |
負の無限大の方向の |
| NextDown(Single) |
負の無限大の方向の |
| NextUp(Double) |
正の無限大の方向の |
| NextUp(Single) |
正の無限大の方向の |
| Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドを起動します。 (継承元 Object) |
| NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドを起動します。 (継承元 Object) |
| Pow(Double, Double) |
第1引数を第2引数で累乗した値を返します。 |
| PowExact(Int32, Int32) |
|
| PowExact(Int64, Int32) |
|
| Random() |
|
| Rint(Double) |
引数の値に最も近く、数学整数に等しい |
| Round(Double) |
引数に最も近い |
| Round(Single) |
引数に最も近い |
| Scalb(Double, Int32) |
1 つの正しく丸められた浮動小数点乗算によって実行される場合と同様に、2 |
| Scalb(Single, Int32) |
1 つの正しく丸められた浮動小数点乗算によって実行される場合と同様に、2 |
| SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
|
| 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>() |
このJava配列ラッパーからマネージド配列を作成します。 (継承元 Object) |
| ToDegrees(Double) |
ラジアン単位で測定された角度を、度単位で測定されたほぼ同等の角度に変換します。 |
| ToIntExact(Int64) |
|
| ToRadians(Double) |
度単位で測定された角度を、ラジアン単位で測定されたほぼ同等の角度に変換します。 |
| ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
| Ulp(Double) |
引数の ulp のサイズを返します。 |
| Ulp(Single) |
引数の ulp のサイズを返します。 |
| UnregisterFromRuntime() |
相互運用ランタイムからこのJava ピアの登録を解除します。 (継承元 Object) |
| UnsignedMultiplyExact(Int32, Int32) |
結果が符号なし |
| UnsignedMultiplyExact(Int64, Int32) |
結果が符号なし |
| UnsignedMultiplyExact(Int64, Int64) |
結果が符号なし |
| UnsignedMultiplyHigh(Int64, Int64) |
2 つの符号なし 64 ビット因子の符号なし 128 ビット積の最上位 64 ビットを |
| UnsignedPowExact(Int32, Int32) |
結果が符号なし |
| UnsignedPowExact(Int64, Int32) |
結果が符号なし |
| Wait() |
現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。 (継承元 Object) |
| Wait(Int64, Int32) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
| Wait(Int64) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
明示的なインターフェイスの実装
| 名前 | 説明 |
|---|---|
| IJavaPeerable.Disposed() |
|
| IJavaPeerable.Finalized() |
|
| IJavaPeerable.JniObjectReferenceControlBlock |
|
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
|
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
|
| IJavaPeerable.SetPeerReference(JniObjectReference) |
|
拡張メソッド
| 名前 | 説明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
インスタンス |
| JavaAs<TResult>(IJavaPeerable) |
|
| JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
| JavaCast<TResult>(IJavaObject) |
|
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
|