Double クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
クラスは Double
、 オブジェクト内のプリミティブ型 double
の値をラップします。
[Android.Runtime.Register("java/lang/Double", DoNotGenerateAcw=true)]
public sealed class Double : Java.Lang.Number, IConvertible, IDisposable, Java.Interop.IJavaPeerable, Java.Lang.IComparable
[<Android.Runtime.Register("java/lang/Double", DoNotGenerateAcw=true)>]
type Double = class
inherit Number
interface IConvertible
interface IComparable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 継承
- 属性
- 実装
注釈
クラスは Double
、 オブジェクト内のプリミティブ型 double
の値をラップします。 型のオブジェクトには、型 Double
が である 1 つのフィールドが double
含まれています。
さらに、このクラスには、 を に変換するためのメソッドと、 を にString
double
変換double
するためのメソッドとString
、 を処理double
するときに役立つその他の定数とメソッドが用意されています。
<Android から削除--: ValueBased の段落
これは 値ベースの クラスです。プログラマは、#equals(Object) が等しいインスタンスを交換可能として扱い、同期にインスタンスを使用しないようにする必要があります。または、予期しない動作が発生する可能性があります。 たとえば、将来のリリースでは、同期が失敗する可能性があります。 -->
<h2>等価性Relation>浮動小数点等価性、等価性、および比較</h2>
IEEE 754 浮動小数点値には、有限の 0 以外の値、符号付きゼロ (+0.0
および -0.0
)、符号付き無限大 Double#POSITIVE_INFINITY正の無限大と Double#NEGATIVE_INFINITY負の無限大)、Double#NaN NaN (数値以外) が含まれます。
一 <連の値に対する em>等価関係</em> は、反射、対称、推移的な値のペアのブール関係です。 等価関係とオブジェクトの等価性の詳細については、仕様を Object#equals Object.equals
参照してください。 等価関係は、操作される値を 等価クラスと呼ばれるセットに分割します。 等価クラスのすべてのメンバーは、リレーションの下で互いに等しくなります。 等価クラスに含まれるメンバーは 1 つだけです。 少なくともいくつかの目的のために、等価クラスのすべてのメンバーは互いに置き換えられます。 特に、数式の同等の値<>では、式の結果を変更せずに、互いに em 置換</em> することができます。つまり、式の結果の等価クラスを変更します。
特に、浮動小数点値に==
対する組み込み操作は><、等価関係ではない/em> です<。 等価関係を定義していないにもかかわらず、IEEE 754 ==
演算子のセマンティクスは、数値計算の他のニーズを満たすように意図的に設計されました。 浮動小数点値で等価関係のプロパティが 満た ==
されない場合は、次の 2 つの例外があります。
<ul>
<li>と v2
が両方とも NaN の場合v1
、v1 == v2
値 false
は になります。 したがって、2 つの NaN 引数<の場合、等価関係の em>反射</em> プロパティは><演算子によって==
満たされない</em> です。
<li>が を表し、 v2
が を表+0.0
す-0.0
場合v1
は 、またはその逆の場合v1 == v2
は、さまざまな浮動小数点演算の下で と が区別できる場合+0.0
-0.0
でも、値true
を持ちます。 たとえば、 1.0/+0.0
は正の無限大に評価され、 1.0/-0.0
は em>negative</em> 無限大と評価<され、正の無限大と負の無限大は互いに等しくないし、互いに等しくない。 したがって、符号付きゼロ入力は、通常、ゼロで除算されるため、0 の結果の符号を決定します-0.0
が、+0.0
一般的には互いに置き換えられない可能性があります。 ゼロ入力の符号は、一部の数学ライブラリ メソッドの結果にも置換不可能な影響を与えます。
</ul>
組み込みの比較演算子 (<
、、など) を使用した順序付き比較の場合、 <=
NaN 値には別の異常な状況があります。NaN は、それ自体を含む値よりも小さくも大きくもなく、値と等しくありません。 つまり、比較の三分法では、em>not</em> が保持されます<。
メソッドと compareTo
メソッドの適切なセマンティクスをequals
提供するために、これらのメソッドを単にラッパー==
または順序付け比較操作にすることはできません。 代わりに、 Double#equals equals
は NaN 引数を相互に等しく定義し、em>not</em> を と等しくするように <-0.0
定義+0.0
し、反射性を復元します。 比較の場合、 は より小さく+0.0
、 Double#compareTo compareTo
NaN がそれ自体と等しく、正の無限大より大きいと見なされる合計順序-0.0
を定義します。
と compareTo
のequals
演算セマンティクスは、浮動小数点値を整数値にビット単位で変換 #doubleToLongBits 観点から表されます。
<によって#compareTo compareTo
実装される em>自然な順序付け</em> は、Equals と一致する比較可能です。 つまり、2 つのオブジェクトは、if と が 0 を返す場合compareTo
にのみ等しいequals
と報告されます。
と にequals
compareTo
定義された調整された動作により、ラッパー クラスのインスタンスが従来のデータ構造で適切に動作できるようになります。 たとえば、NaN 値を相互に equals
定義すると、 または の java.util.HashSet HashSet
キー java.util.HashMap HashMap
として NaN を使用できます。 同様に、、、および NaN を含む+0.0
-0.0
合計順序として を定義compareTo
すると、ラッパー クラスのインスタンスを の要素として、または のjava.util.SortedSet SortedSet
java.util.SortedMap SortedMap
キーとして使用できます。
1.0 に追加されました。
の Java ドキュメント java.lang.Double
。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
コンストラクター
Double(Double) |
プリミティブ |
Double(String) |
文字列で表される |
フィールド
Bytes |
値を表 |
MaxExponent |
有限 |
MaxValue |
型 |
MinExponent |
正規化された |
MinNormal |
型 |
MinValue |
型 |
NaN |
型 |
NegativeInfinity |
型 |
PositiveInfinity |
型 |
Size |
値を表 |
プロパティ
Class |
この |
Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
IsInfinite |
この |
IsNaN |
|
JniIdentityHashCode |
クラスは |
JniPeerMembers |
クラスは |
PeerReference |
クラスは |
ThresholdClass |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用することを意図したものではありません。 (継承元 Number) |
ThresholdType |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用することを意図したものではありません。 (継承元 Number) |
Type |
|
メソッド
ByteValue() |
指定した数値の値を として |
Clone() |
このオブジェクトのコピーを作成して返します。 (継承元 Object) |
Compare(Double, Double) |
指定した 2 つの値を比較します |
CompareTo(Double) |
2 つの |
Dispose() |
クラスは |
Dispose(Boolean) |
クラスは |
DoubleToLongBits(Double) |
IEEE 754 浮動小数点 "double format" ビット レイアウトに従って、指定された浮動小数点値の表現を返します。 |
DoubleToRawLongBits(Double) |
IEEE 754 浮動小数点の "double format" ビット レイアウトに従って、指定された浮動小数点値の表現を返し、Not-a-Number (NaN) 値を保持します。 |
DoubleValue() |
この |
Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
FloatValue() |
縮小プリミティブ変換後に、 の |
GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
HashCode(Double) |
値のハッシュ コードを |
IntValue() |
縮小プリミティブ変換後に、 の |
InvokeIsInfinite(Double) |
|
InvokeIsNaN(Double) |
|
IsFinite(Double) |
|
JavaFinalize() |
ガベージ コレクションがオブジェクトへの参照がなくなったと判断したときに、オブジェクトのガベージ コレクターによって呼び出されます。 (継承元 Object) |
LongBitsToDouble(Int64) |
指定されたビット表現に |
LongValue() |
縮小プリミティブ変換後に、 の |
Max(Double, Double) |
を呼び出した場合と同様に、2 つの |
Min(Double, Double) |
を呼び出すかのように、2 つの |
Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドをウェイクアップします。 (継承元 Object) |
NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドをウェイクアップします。 (継承元 Object) |
ParseDouble(String) |
クラス |
SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
ShortValue() |
指定した数値の値を として |
Sum(Double, Double) |
+ 演算子に従って 2 つの |
ToArray<T>() |
クラスは |
ToHexString(Double) |
引数の 16 進数の文字列表現を |
ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
ToString(Double) |
引数の文字列形式を |
UnregisterFromRuntime() |
クラスは |
ValueOf(Double) |
指定した値を |
ValueOf(String) |
|
Wait() |
現在のスレッドが起動するまで待機します。通常<>は、通知</em> または <em>割り込み</em によって待機します>。 (継承元 Object) |
Wait(Int64) |
現在のスレッドが起動するまで待機します。通常<>は、通知</em> または>< em 割り込み</em>、または一定のリアルタイムが経過するまで待機します。 (継承元 Object) |
Wait(Int64, Int32) |
現在のスレッドが起動するまで待機します。通常<>は、通知</em> または>< em 割り込み</em>、または一定のリアルタイムが経過するまで待機します。 (継承元 Object) |
演算子
Explicit(Double to Double) |
クラスは |
明示的なインターフェイスの実装
IComparable.CompareTo(Object) |
クラスは |
IConvertible.GetTypeCode() |
クラスは |
IConvertible.ToBoolean(IFormatProvider) |
クラスは |
IConvertible.ToByte(IFormatProvider) |
クラスは |
IConvertible.ToChar(IFormatProvider) |
クラスは |
IConvertible.ToDateTime(IFormatProvider) |
クラスは |
IConvertible.ToDecimal(IFormatProvider) |
クラスは |
IConvertible.ToDouble(IFormatProvider) |
クラスは |
IConvertible.ToInt16(IFormatProvider) |
クラスは |
IConvertible.ToInt32(IFormatProvider) |
クラスは |
IConvertible.ToInt64(IFormatProvider) |
クラスは |
IConvertible.ToSByte(IFormatProvider) |
クラスは |
IConvertible.ToSingle(IFormatProvider) |
クラスは |
IConvertible.ToString(IFormatProvider) |
クラスは |
IConvertible.ToType(Type, IFormatProvider) |
クラスは |
IConvertible.ToUInt16(IFormatProvider) |
クラスは |
IConvertible.ToUInt32(IFormatProvider) |
クラスは |
IConvertible.ToUInt64(IFormatProvider) |
クラスは |
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) |
クラスは |