Language

StrictMath クラス

定義

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
属性

注釈

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 で追加されました。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

フィールド

名前 説明
E

自然対数の底double近い値。

Pi

pi double) に近い値。円の円周の直径に対する比率。

Tau

double (>) に近い値。円の円周の半径に対する比率。

プロパティ

名前 説明
Class

この Objectのランタイム クラスを返します。

(継承元 Object)
Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
JniIdentityHashCode

相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。

(継承元 Object)
JniManagedPeerState

StrictMathクラスには、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。

(継承元 JavaObject)
JniPeerMembers

このJava ピアのメンバーを呼び出すために使用される JNI メタデータを取得します。

PeerReference

このJava ピアの JNI オブジェクト参照を取得します。

(継承元 Object)
ThresholdClass

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 Object)
ThresholdType

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 Object)

メソッド

名前 説明
Abs(Double)

double値の絶対値を返します。

Abs(Int32)

int値の絶対値を返します。

Abs(Int64)

long値の絶対値を返します。

Abs(Single)

float値の絶対値を返します。

AbsExact(Int32)

intとして正確に表現できる場合は、int値の数学的絶対値を返し、結果が正のArithmeticException範囲をオーバーフローした場合はintをスローします。

AbsExact(Int64)

longとして正確に表現できる場合は、long値の数学的絶対値を返し、結果が正のArithmeticException範囲をオーバーフローした場合はlongをスローします。

Acos(Double)

値のアークコサインを返します。返される角度は 0 の範囲です。

AddExact(Int32, Int32)

引数の合計を返し、結果が intをオーバーフローした場合に例外をスローします。

AddExact(Int64, Int64)

引数の合計を返し、結果が longオーバーフローした場合に例外をスローします。

Asin(Double)

値のアークサインを返します。返される角度は 、> の範囲にあります。pi/2 から pi/2。

Atan(Double)

値のアークタンジェントを返します。返される角度は 、> の範囲にあります。pi/2 から pi/2。

Atan2(Double, Double)

四角形座標 (,&x) から極座標 (r,  への変換) から角度 y を返します。theta)。

Cbrt(Double)

double値のキューブ ルートを返します。

Ceil(Double)

引数以上で数学整数と等しい最小 (負の無限大に最も近い) double 値を返します。

CeilDiv(Int32, Int32)

代数商以上の最小 (負の無限大に最も近い) int 値を返します。

CeilDiv(Int64, Int32)

代数商以上の最小 (負の無限大に最も近い) long 値を返します。

CeilDiv(Int64, Int64)

代数商以上の最小 (負の無限大に最も近い) long 値を返します。

CeilDivExact(Int32, Int32)

代数商以上の最小 (負の無限大に最も近い) int 値を返します。

CeilDivExact(Int64, Int64)

代数商以上の最小 (負の無限大に最も近い) long 値を返します。

CeilMod(Int32, Int32)

int引数の上限剰余を返します。

CeilMod(Int64, Int32)

long引数とint引数の上限剰余を返します。

CeilMod(Int64, Int64)

long引数の上限剰余を返します。

Clamp(Double, Double, Double)

最小値と最大値の間に収まるように値をクランプします。

Clamp(Int64, Int32, Int32)

最小値と最大値の間に収まるように値をクランプします。

Clamp(Int64, Int64, Int64)

最小値と最大値の間に収まるように値をクランプします。

Clamp(Single, Single, Single)

最小値と最大値の間に収まるように値をクランプします。

Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

StrictMathクラスには、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。

(継承元 JavaObject)
CopySign(Double, Double)

2 番目の浮動小数点引数の符号を持つ最初の浮動小数点引数を返します。

CopySign(Single, Single)

2 番目の浮動小数点引数の符号を持つ最初の浮動小数点引数を返します。

Cos(Double)

角度の三角コサインを返します。

Cosh(Double)

double値の双曲線余弦を返します。

DecrementExact(Int32)

引数を 1 ずつデクリメントして返し、結果が intオーバーフローした場合に例外をスローします。

DecrementExact(Int64)

引数を 1 ずつデクリメントして返し、結果が longオーバーフローした場合に例外をスローします。

Dispose()

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
Dispose(Boolean)

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
DisposeUnlessReferenced()

StrictMathクラスには、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。

(継承元 JavaObject)
DivideExact(Int32, Int32)

引数の商を返し、結果が intをオーバーフローした場合に例外をスローします。

DivideExact(Int64, Int64)

引数の商を返し、結果が longオーバーフローした場合に例外をスローします。

Equals(Object)

StrictMathクラスには、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。

(継承元 JavaObject)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
Exp(Double)

値の累乗に引き上げられたオイラーの数値 double を返します。

Expm1(Double)

e<sup>x</sup>> を返します。--1。

Floor(Double)

引数以下で数学整数と等しい最大 (正の無限大に最も近い) double 値を返します。

FloorDiv(Int32, Int32)

代数商以下の最大 (正の無限大に最も近い) int 値を返します。

FloorDiv(Int64, Int32)

代数商以下の最大 (正の無限大に最も近い) long 値を返します。

FloorDiv(Int64, Int64)

代数商以下の最大 (正の無限大に最も近い) long 値を返します。

FloorDivExact(Int32, Int32)

代数商以下の最大 (正の無限大に最も近い) int 値を返します。

FloorDivExact(Int64, Int64)

代数商以下の最大 (正の無限大に最も近い) long 値を返します。

FloorMod(Int32, Int32)

int引数の床剰余を返します。

FloorMod(Int64, Int32)

longおよびint引数の床剰余を返します。

FloorMod(Int64, Int64)

long引数の床剰余を返します。

Fma(Double, Double, Double)

3 つの引数の乗算加算を返します。つまり、3 番目の引数で合計された最初の 2 つの引数の正確な積を返し、最も近い doubleに 1 回丸められます。

Fma(Single, Single, Single)

3 つの引数の乗算加算を返します。つまり、3 番目の引数で合計された最初の 2 つの引数の正確な積を返し、最も近い floatに 1 回丸められます。

GetExponent(Double)

doubleの表現で使用される偏りのない指数を返します。

GetExponent(Single)

floatの表現で使用される偏りのない指数を返します。

GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
Hypot(Double, Double)

中間オーバーフローまたはアンダーフローなしで sqrt(x<sup>2</sup>>+y<sup>2</sup>) を返します。

IEEEremainder(Double, Double)

IEEE 754 標準で規定されている 2 つの引数に対する剰余演算を計算します。

IncrementExact(Int32)

引数を 1 ずつインクリメントして返し、結果が intオーバーフローした場合に例外をスローします。

IncrementExact(Int64)

引数を 1 ずつインクリメントして返し、結果が longオーバーフローした場合に例外をスローします。

JavaFinalize()
古い.

オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
Log(Double)

値の自然対数 (底 double) を返します。

Log10(Double)

double値の底 10 の対数を返します。

Log1p(Double)

引数と 1 の合計の自然対数を返します。

Max(Double, Double)

2 つの double 値の大きい方を返します。

Max(Int32, Int32)

2 つの int 値の大きい方を返します。

Max(Int64, Int64)

2 つの long 値の大きい方を返します。

Max(Single, Single)

2 つの float 値の大きい方を返します。

Min(Double, Double)

2 つの double 値のうち小さい方を返します。

Min(Int32, Int32)

2 つの int 値のうち小さい方を返します。

Min(Int64, Int64)

2 つの long 値のうち小さい方を返します。

Min(Single, Single)

2 つの float 値のうち小さい方を返します。

MultiplyExact(Int32, Int32)

引数の積を返し、結果が intをオーバーフローした場合に例外をスローします。

MultiplyExact(Int64, Int32)

引数の積を返し、結果が longオーバーフローした場合に例外をスローします。

MultiplyExact(Int64, Int64)

引数の積を返し、結果が longオーバーフローした場合に例外をスローします。

MultiplyFull(Int32, Int32)

引数の正確な数学的積を返します。

MultiplyHigh(Int64, Int64)

2 つの 64 ビット 因子の 128 ビット積の最も重要な 64 ビットを long として返します。

NegateExact(Int32)

引数の否定を返し、結果が intをオーバーフローした場合に例外をスローします。

NegateExact(Int64)

引数の否定を返し、結果が longオーバーフローした場合に例外をスローします。

NextAfter(Double, Double)

2 番目の引数の方向の最初の引数に隣接する浮動小数点数を返します。

NextAfter(Single, Double)

2 番目の引数の方向の最初の引数に隣接する浮動小数点数を返します。

NextDown(Double)

負の無限大の方向の d に隣接する浮動小数点値を返します。

NextDown(Single)

負の無限大の方向の f に隣接する浮動小数点値を返します。

NextUp(Double)

正の無限大の方向の d に隣接する浮動小数点値を返します。

NextUp(Single)

正の無限大の方向の f に隣接する浮動小数点値を返します。

Notify()

このオブジェクトのモニターで待機している 1 つのスレッドを起動します。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドを起動します。

(継承元 Object)
Pow(Double, Double)

第1引数を第2引数で累乗した値を返します。

PowExact(Int32, Int32)

x nの累乗を返し、結果がintをオーバーフローした場合に例外をスローします。

PowExact(Int64, Int32)

x nの累乗を返し、結果がlongをオーバーフローした場合に例外をスローします。

Random()

double以上、0.0未満の正符号を持つ1.0値を返します。

Rint(Double)

引数の値に最も近く、数学整数に等しい double 値を返します。

Round(Double)

引数に最も近い long を返し、同じ関係を正の無限大に丸めます。

Round(Single)

引数に最も近い int を返し、同じ関係を正の無限大に丸めます。

Scalb(Double, Int32)

1 つの正しく丸められた浮動小数点乗算によって実行される場合と同様に、2dup<>scaleFactor/sup< 丸められた> > を返します。

Scalb(Single, Int32)

1 つの正しく丸められた浮動小数点乗算によって実行される場合と同様に、2fup<>scaleFactor/sup< 丸められた> > を返します。

SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

StrictMathクラスには、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。

(継承元 JavaObject)
Signum(Double)

引数の signum 関数を返します。引数が 0 の場合は 0、1。

Signum(Single)

引数の signum 関数を返します。引数が 0 の場合は 0、1。

Sin(Double)

角度の三角正弦を返します。

Sinh(Double)

double値の双曲線正弦を返します。

Sqrt(Double)

double値の正しく丸められた正の平方根を返します。

SubtractExact(Int32, Int32)

引数の差を返し、結果が intオーバーフローした場合に例外をスローします。

SubtractExact(Int64, Int64)

引数の差を返し、結果が longオーバーフローした場合に例外をスローします。

Tan(Double)

角度の三角正接を返します。

Tanh(Double)

double値の双曲線正接を返します。

ToArray<T>()

このJava配列ラッパーからマネージド配列を作成します。

(継承元 Object)
ToDegrees(Double)

ラジアン単位で測定された角度を、度単位で測定されたほぼ同等の角度に変換します。

ToIntExact(Int64)

long引数の値を返し、値がintをオーバーフローした場合に例外をスローします。

ToRadians(Double)

度単位で測定された角度を、ラジアン単位で測定されたほぼ同等の角度に変換します。

ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
Ulp(Double)

引数の ulp のサイズを返します。

Ulp(Single)

引数の ulp のサイズを返します。

UnregisterFromRuntime()

相互運用ランタイムからこのJava ピアの登録を解除します。

(継承元 Object)
UnsignedMultiplyExact(Int32, Int32)

結果が符号なし intをオーバーフローした場合に例外をスローする、符号なし引数の積を返します。

UnsignedMultiplyExact(Int64, Int32)

結果が符号なし longをオーバーフローした場合に例外をスローする、符号なし引数の積を返します。

UnsignedMultiplyExact(Int64, Int64)

結果が符号なし longをオーバーフローした場合に例外をスローする、符号なし引数の積を返します。

UnsignedMultiplyHigh(Int64, Int64)

2 つの符号なし 64 ビット因子の符号なし 128 ビット積の最上位 64 ビットを long として返します。

UnsignedPowExact(Int32, Int32)

結果が符号なしintをオーバーフローした場合に例外をスローする、nの累乗に符号なしxを返します。

UnsignedPowExact(Int64, Int32)

結果が符号なしlongをオーバーフローした場合に例外をスローする、nの累乗に符号なしxを返します。

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

StrictMathクラスには、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。

(継承元 JavaObject)
IJavaPeerable.Finalized()

StrictMathクラスには、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

StrictMathクラスには、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。

(継承元 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

StrictMathクラスには、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。

(継承元 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

StrictMathクラスには、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。

(継承元 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

StrictMathクラスには、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。

(継承元 JavaObject)

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

StrictMathクラスには、基本指数関数、対数関数、平方根関数、三角関数などの基本的な数値演算を実行するためのメソッドが含まれています。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象