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
定義されています。 1 つの関数に複数の定義 (たとえばacos
) を提供する場合fdlibm
は、"IEEE 754 コア関数" バージョンを使用します (名前が文字e
で始まるファイルに存在します)。 セマンティクスを必要とするfdlibm
メソッドはsin
、, cos
tan
, , asin
, acos
, atan
, , exp
, log
atan2
pow
sinh
log10
cbrt
cosh
, hypot
tanh
, , .log1p
expm1
プラットフォームでは、int 型と long プリミティブ型を持つ符号付き 2 の補数整数算術演算が使用されます。 開発者は、算術演算によって正しい結果が一貫して生成されるようにプリミティブ型を選択する必要があります。これは、場合によっては、演算が計算の値の範囲をオーバーフローしないことを意味します。 ベスト プラクティスは、オーバーフローを回避するためにプリミティブ型とアルゴリズムを選択することです。 サイズint
またはオーバーフロー エラーを検出する必要がある場合は、メソッド addExact
、subtractExact
、、multiplyExact
、toIntExact
、incrementExact
、、 decrementExact
negateExact
結果がオーバーフローしたときにスロー ArithmeticException
long
します。 算術演算の除算と絶対値の場合、オーバーフローは特定の最小値または最大値でのみ発生し、必要に応じて最小値または最大値に対してチェックする必要があります。
<h2>Ieee754RecommendedOps>IEEE 754 Recommended Operations</h2>
この java.lang.Math Math
クラスでは、選択した Math
実装基準とメソッドの共有品質が StrictMath
、IEEE 754 の推奨される操作とどのように関連しているかを説明します。
1.3 で追加されました。
の Java ドキュメントjava.lang.StrictMath
このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。
フィールド
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 つの引数の乗算加算を返します。つまり、3 番目の引数で合計された最初の 2 つの引数の正確な積を返し、最も近い |
Fma(Single, Single, Single) |
3 つの引数の乗算加算を返します。つまり、3 番目の引数で合計された最初の 2 つの引数の正確な積を返し、最も近い |
GetExponent(Double) |
の表現 |
GetExponent(Single) |
の表現 |
GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
Hypot(Double, Double) |
中間オーバーフローまたはアンダーフローなしで sqrt(xsup 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) |
2 番目の引数の方向の最初の引数に隣接する浮動小数点数を返します。 |
NextAfter(Single, Double) |
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, Int32) |
現在のスレッドが目覚めるまで待機します。通常<><は、通知/em> または <em>中断</em> によって、または一定のリアルタイムが経過するまで待機します。 (継承元 Object) |
Wait(Int64) |
現在のスレッドが目覚めるまで待機します。通常<><は、通知/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) |
このクラス |