Share via


Double Klasse

Definition

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

[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
Vererbung
Attribute
Implementiert

Hinweise

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt. Ein Objekt vom Typ Double enthält ein einzelnes Feld, dessen Typ ist double.

Darüber hinaus bietet diese Klasse mehrere Methoden zum Konvertieren von ein doubleString und ein String in ein doublesowie andere Konstanten und Methoden, die beim Umgang mit einem doublenützlich sind.

<-- android-removed: Absatz auf ValueBased

Dies ist eine wertbasierte Klasse. Programmierer sollten Instanzen, die #equals(Object) gleich sind, als austauschbar behandeln und keine Instanzen für die Synchronisierung verwenden, oder es kann zu unvorhersehbarem Verhalten kommen. In einer zukünftigen Version kann beispielsweise bei der Synchronisierung ein Fehler auftreten. -->

<h2>ÄquivalenzRelation>Gleitkommagleichheit, Äquivalenz und Vergleich</h2>

IEEE 754-Gleitkommawerte umfassen endliche nonzero-Werte, signierte Nullen (+0.0 und -0.0), signierte Infinities Double#POSITIVE_INFINITY positive unendlich und Double#NEGATIVE_INFINITY negative unendlich) und Double#NaN NaN NaN (not-a-number).

Eine <Em-Äquivalenzbeziehung></em> für einen Satz von Werten ist eine boolesche Beziehung für Wertepaare, die reflexiv, symmetrisch und transitiv sind. Weitere Informationen zu Äquivalenzbeziehungen und Objektgleichheit finden Sie in der Object#equals Object.equals Spezifikation. Eine Äquivalenzbeziehung partitioniert die Werte, über die sie arbeitet, in Sätze, die als Äquivalenzklassen bezeichnet werden. Alle Elemente der Äquivalenzklasse sind unter der Beziehung gleich. Eine Äquivalenzklasse darf nur ein einzelnes Element enthalten. Zumindest für einige Zwecke sind alle Member einer Äquivalenzklasse füreinander ersetzbar. Insbesondere können in einem numerischen Ausdruck gleichwertige< Werte em/>em> für einander ersetzt werden, ohne das Ergebnis des Ausdrucks zu ändern, was bedeutet, dass die Äquivalenzklasse des Ergebnisses des Ausdrucks geändert wird<.

Insbesondere ist der integrierte == Vorgang für Gleitkommawerte keine><> Äquivalenzbeziehung.< Obwohl keine Äquivalenzbeziehung definiert wurde, wurde die Semantik des IEEE 754-Operators == bewusst so konzipiert, dass sie andere Anforderungen numerischer Berechnungen erfüllt. Es gibt zwei Ausnahmen, bei denen die Eigenschaften einer Äquivalenzbeziehung durch == Gleitkommawerte nicht erfüllt werden:

<ul>

<li>Wenn v1 und v2 naN sind, hat v1 == v2 der Wert false. Daher ist <für zwei NaN-Argumente die <em>reflexive</em-Eigenschaft> einer Äquivalenzbeziehung em>not</em> vom == Operator erfüllt.

<li>, wenn v1 dargestellt +0.0 wird, während v2 oder -0.0umgekehrt, hat den Werttrue, obwohl +0.0 und -0.0 unter verschiedenen Gleitkommavorgängen v1 == v2 unterschieden werden kann. So wird z. B. in positive Unendlichkeit ausgewertet><, 1.0/+0.0 während 1.0/-0.0 negative</em-Unendlichkeit> und positive Unendlichkeit und negative Unendlichkeit weder gleicheinander noch gleichwertig zueinander sind. Daher bestimmt eine Eingabe mit signierter Null am häufigsten das Zeichen eines Nullergebnisses, da sie durch null dividiert wird, +0.0 und -0.0 kann im Allgemeinen nicht gegenseitig ersetzt werden. Das Zeichen einer Nulleingabe hat auch einen nicht substituierbaren Effekt auf das Ergebnis einiger mathematischer Bibliotheksmethoden.

</ul>

Für geordnete Vergleiche mit den integrierten Vergleichsoperatoren (<, <=usw.) weisen NaN-Werte eine andere anomale Situation auf: Ein NaN ist weder kleiner als noch größer als, noch gleich einem Wert, einschließlich sich selbst. Dies bedeutet, dass die Trichotomie des Vergleichs<em>not</em> hält.

Um die geeignete Semantik für equals und compareTo Methoden bereitzustellen, können diese Methoden nicht einfach Wrapper um == oder geordnete Vergleichsvorgänge sein. Definiert stattdessen NaN-Argumente, Double#equals equals um gleich zu sein, und definiert +0.0 , dass <em>not</em> gleich sein soll -0.0, um reflexivität wiederherzustellen. Für Vergleiche definiert eine Gesamtreihenfolge, Double#compareTo compareTo bei der -0.0 kleiner als +0.0 ist und bei der ein NaN gleich sich selbst ist und als größer als positive Unendlichkeit betrachtet wird.

Die operative Semantik von equals und compareTo wird in Bezug auf #doubleToLongBits bitweise Konvertierung der Gleitkommawerte in integrale Werte ausgedrückt.

Die <von implementierte #compareTo compareTo natürliche>Reihenfolge</em> ist vergleichbar konsistent mit gleich. Das heißt, zwei Objekte werden als gleich gemeldet equals , wenn und nur, wenn compareTo für diese Objekte null zurückgegeben wird.

Die für equals und compareTo definierten angepassten Verhaltensweisen ermöglichen es Instanzen von Wrapperklassen, ordnungsgemäß mit herkömmlichen Datenstrukturen zu arbeiten. Wenn Sie z. B. NaN-Werte equals zueinander definieren, kann NaN als Element eines java.util.HashSet HashSet oder als Schlüssel eines java.util.HashMap HashMapverwendet werden. Ebenso ermöglicht die Definition compareTo als Gesamtreihenfolge, einschließlich +0.0, -0.0und NaN, Instanzen von Wrapperklassen als Elemente eines java.util.SortedSet SortedSet oder als Schlüssel eines java.util.SortedMap SortedMap.

In 1.0 hinzugefügt.

Java-Dokumentation für java.lang.Double.

Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In der Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

Double(Double)

Erstellt ein neu zugeordnetes Double Objekt, das das primitive double Argument darstellt.

Double(String)

Erstellt ein neu zugeordnetes Double Objekt, das den Gleitkommawert des Typs double darstellt, der durch die Zeichenfolge dargestellt wird.

Felder

Bytes

Die Anzahl der Bytes, die zum Darstellen eines Werts double verwendet werden.

MaxExponent

Maximaler Exponent, über den eine endliche double Variable verfügen kann.

MaxValue

Eine Konstante mit dem größten positiven endlichen Wert vom Typ double, (2-2<sup-52></sup>)· 2<sup>1023</sup>.

MinExponent

Minimaler Exponent, den eine normalisierte double Variable haben kann.

MinNormal

Eine Konstante, die den kleinsten positiven Normalwert des Typs doubleenthält, 2<sup-1022></sup>.

MinValue

Eine Konstante, die den kleinsten positiven nonzero-Wert des Typs doubleenthält, 2<sup-1074></sup>.

NaN

Eine Konstante, die einen NaN-Wert (Not-a-Number) vom Typ doubleenthält.

NegativeInfinity

Eine Konstante, die die negative Unendlichkeit des Typs doubleenthält.

PositiveInfinity

Eine Konstante, die die positive Unendlichkeit des Typs doubleenthält.

Size

Die Anzahl der Bits, die zum Darstellen eines double Werts verwendet werden.

Eigenschaften

Class

Gibt die Laufzeitklasse dieses Objectzurück.

(Geerbt von Object)
Handle

Das Handle zum zugrunde liegenden Android-instance.

(Geerbt von Object)
IsInfinite

Gibt zurück true , wenn dieser Double Wert unendlich groß ist, false andernfalls.

IsNaN

Gibt zurück true , wenn es sich bei diesem Double Wert um eine Not-a-Number (NaN) handelt, false andernfalls.

JniIdentityHashCode

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)
JniPeerMembers

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

PeerReference

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)
ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von Number)
ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von Number)
Type

Die Class instance, die den primitiven Typ doubledarstellt.

Methoden

ByteValue()

Gibt den Wert der angegebenen Zahl als zurück byte.

(Geerbt von Number)
Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
Compare(Double, Double)

Vergleicht die beiden angegebenen double Werte.

CompareTo(Double)

Vergleicht zwei Double Objekte numerisch.

Dispose()

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)
Dispose(Boolean)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)
DoubleToLongBits(Double)

Gibt eine Darstellung des angegebenen Gleitkommawerts gemäß dem IEEE 754-Gleitkomma-Bitlayout "Double Format" zurück.

DoubleToRawLongBits(Double)

Gibt eine Darstellung des angegebenen Gleitkommawerts gemäß dem IEEE 754-Gleitkomma-Bitlayout "Double Format" zurück, wobei NaN-Werte (Not-a-Number) beibehalten werden.

DoubleValue()

Gibt den double Wert dieses Double Objekts zurück.

Equals(Object)

Gibt an, ob ein anderes Objekt diesem "gleich" ist.

(Geerbt von Object)
FloatValue()

Gibt den Wert dieses Double Werts als nach float einer einschränkenden primitiven Konvertierung zurück.

GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
HashCode(Double)

Gibt einen Hashcode für einen Wert zurück double , der mit kompatibel ist Double.hashCode().

IntValue()

Gibt den Wert dieses Werts Double als nach int einer einschränkenden primitiven Konvertierung zurück.

InvokeIsInfinite(Double)

Gibt zurück true , wenn die angegebene Zahl unendlich groß ist, false andernfalls.

InvokeIsNaN(Double)

Gibt zurück true , wenn es sich bei der angegebenen Zahl um einen NaN-Wert (Not-a-Number) handelt, false andernfalls.

IsFinite(Double)

Gibt zurück true , wenn das Argument ein endlicher Gleitkommawert ist; gibt andernfalls (für NaN- und Infinity-Argumente) zurück false .

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection feststellt, dass keine Verweise mehr auf das Objekt vorhanden sind.

(Geerbt von Object)
LongBitsToDouble(Int64)

Gibt den Wert zurück, der double einer bestimmten Bitdarstellung entspricht.

LongValue()

Gibt den Wert dieses Double Werts als nach long einer einschränkenden primitiven Konvertierung zurück.

Max(Double, Double)

Gibt den größeren von zwei double Werten zurück, als ob durch Aufrufen Math#max(double, double) Math.maxvon .

Min(Double, Double)

Gibt den kleineren von zwei double Werten zurück, als ob durch Aufrufen Math#min(double, double) Math.minvon .

Notify()

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
ParseDouble(String)

Gibt einen neuen double initialisierten Wert zurück, der durch den angegebenen Stringdargestellt wird, wie er von der valueOf -Methode der -Klasse Doubleausgeführt wird.

SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
ShortValue()

Gibt den Wert der angegebenen Zahl als zurück short.

(Geerbt von Number)
Sum(Double, Double)

Fügt zwei double Werte gemäß dem Operator + zusammen.

ToArray<T>()

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)
ToHexString(Double)

Gibt eine hexadezimale Zeichenfolgendarstellung des double Arguments zurück.

ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
ToString(Double)

Gibt eine Zeichenfolgendarstellung des double Arguments zurück.

UnregisterFromRuntime()

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)
ValueOf(Double)

Gibt einen Double instance zurück, der den angegebenen double Wert darstellt.

ValueOf(String)

Gibt ein Double Objekt mit dem double Wert zurück, der durch die Argumentzeichenfolge sdargestellt wird.

Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert wird, in der Regel durch em benachrichtigen/em> oder <em>interrupted</em>.<><

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert wird, in der Regel, indem <er>benachrichtigt</em> oder <em>interrupted</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert wird, in der Regel, indem <er>benachrichtigt</em> oder <em>interrupted</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Operatoren

Explicit(Double to Double)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

Explizite Schnittstellenimplementierungen

IComparable.CompareTo(Object)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.GetTypeCode()

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToBoolean(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToByte(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToChar(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToDateTime(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToDecimal(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToDouble(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToInt16(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToInt32(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToInt64(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToSByte(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToSingle(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToString(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToType(Type, IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToUInt16(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToUInt32(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IConvertible.ToUInt64(IFormatProvider)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

IJavaPeerable.Disposed()

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)
IJavaPeerable.DisposeUnlessReferenced()

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)
IJavaPeerable.Finalized()

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)
IJavaPeerable.JniManagedPeerState

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

(Geerbt von Object)

Erweiterungsmethoden

JavaCast<TResult>(IJavaObject)

Führt eine Für Android-Runtime überprüfte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

GetJniTypeName(IJavaPeerable)

Die Double -Klasse umschließt einen Wert des primitiven Typs double in einem -Objekt.

Gilt für: