Sprache

Double Klasse

Definition

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

[Android.Runtime.Register("java/lang/Double", DoNotGenerateAcw=true)]
public sealed class Double : Java.Lang.Number, IConvertible, IDisposable, 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 Grundtyps double in einem Objekt. Ein Objekt vom Typ Double enthält ein einzelnes Feld, dessen Typ lautet double.

Darüber hinaus stellt diese Klasse mehrere Methoden zum Konvertieren einer double in eine String und eine String in eine doublesowie andere Konstanten und Methoden bereit, die beim Umgang mit einem double.

<-- Android-entfernt: Absatz auf ValueBased

Dies ist eine wertbasierte Klasse; Programmierer sollten Instanzen behandeln, die #equals(Object) gleich austauschbar sind und keine Instanzen für die Synchronisierung verwenden oder unvorhersehbares Verhalten auftreten können. In einer zukünftigen Version kann die Synchronisierung z. B. fehlschlagen. -->

<h2>equivalenceRelation>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 Unendlichkeit und Double#NEGATIVE_INFINITY negative Unendlichkeit) und Double#NaN NaN (nicht-a-Zahl).

Eine <Äquivalenzbeziehung></em> einer Gruppe von Werten ist eine boolesche Beziehung zu Wertenpaaren, die reflexiv, symmetrisch und transitiv sind. Weitere Erläuterungen zu Äquivalenzbeziehungen und Objektgleichheit finden Sie in der Object#equals Object.equals Spezifikation. Eine Äquivalenzbeziehung partitioniert die Werte, über die sie arbeitet, in Mengen, die als Äquivalenzklassen bezeichnet werden. Alle Mitglieder der Äquivalenzklasse sind unter der Beziehung gleich. Eine Äquivalenzklasse darf nur ein einzelnes Element enthalten. Zumindest für einige Zwecke sind alle Mitglieder einer Äquivalenzklasse untereinander substituierbar. Insbesondere können <in einem numerischen Ausdruck gleichwertige Werte durcheinander ersetzt></em> sein, 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 em<nicht>/em< eine Äquivalenzbeziehung.> Obwohl keine Äquivalenzbeziehung definiert wurde, wurden die Semantik des IEEE 754-Operators == bewusst auf andere Anforderungen der numerischen Berechnung ausgelegt. Es gibt zwei Ausnahmen, bei denen die Eigenschaften einer Äquivalenzbeziehung von == Gleitkommawerten nicht erfüllt sind:

<Ul>

<li>If v1 und v2 beide NaN sind, hat dann v1 == v2 den Wert false. Daher ist bei zwei NaN-Argumenten die <Em>reflexive</em-Eigenschaft> einer Äquivalenzbeziehung vom<Operator nicht>/em< erfüllt>.==

<li>If v1 represents while +0.0 represents v2-0.0 , or vice versa, then v1 == v2 has the value true even though +0.0 and -0.0 are distinguishable under various floating-point operations. Beispielsweise 1.0/+0.0 werden wertet, um eine positive Unendlichkeit auszuwerten, während 1.0/-0.0 sie als <>negative</em> unendliche wertet und positive Unendlichkeit und negative Unendlichkeit weder einander gleich sind noch einander entsprechen. Daher bestimmt eine signierte Nulleingabe am häufigsten das Vorzeichen eines Nullergebnisses, da sie durch Null dividiert wird, +0.0 und -0.0 kann im Allgemeinen nicht durcheinander ersetzt werden. Das Vorzeichen einer Nulleingabe wirkt sich auch auf das Ergebnis einiger mathematischer Bibliotheksmethoden aus.

</ul>

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

Um die entsprechende Semantik für equals und compareTo Methoden bereitzustellen, können diese Methoden nicht einfach Wrapper um == oder sortierte Vergleichsvorgänge herum sein. Definiert stattdessen NaN-Argumente, Double#equals equals die einander entsprechen sollen, und definiert +0.0<>em nicht</em> gleich -0.0, wobei die Reflexivität wiederhergestellt wird. Definiert für Vergleiche eine Gesamtreihenfolge, Double#compareTo compareTo wobei -0.0 kleiner als +0.0 und wo 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 Umwandlung der Gleitkommawerte in integrale Werte ausgedrückt.

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

Die angepassten Verhaltensweisen, die für equals Instanzen von Wrapperklassen definiert sind und compareTo ermöglichen, mit herkömmlichen Datenstrukturen ordnungsgemäß zu arbeiten. Das Definieren von NaN-Werten kann equals z. B. als Element eines oder java.util.HashSet HashSet als Schlüssel einer java.util.HashMap HashMapN verwendet werden. compareTo In ähnlicher Weise können Instanzen von Wrapperklassen als Elemente einer +0.0 oder als Schlüssel einer -0.0Zeichenfolge verwendet werden, einschließlich java.util.SortedSet SortedSet, java.util.SortedMap SortedMapund NaN.

In 1.0 hinzugefügt.

Java Dokumentation für java.lang.Double.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

Name Beschreibung
Double(Double)

Erstellt ein neu zugeordnetes Double Objekt, das das Grundtypargument double darstellt.

Double(String)

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

Felder

Name Beschreibung
Bytes

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

MaxExponent

Maximaler Exponent einer finiten double Variablen kann aufweisen.

MaxValue

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

MinExponent

Eine normalisierte double Variable kann mindestens einen Exponenten aufweisen.

MinNormal

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

MinValue

Eine Konstante, die den kleinsten positiven Nonzero-Wert des Typs double2<sup-1074>/sup<> hält.

NaN

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

NegativeInfinity

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

PositiveInfinity

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

Precision

Die Anzahl der Bits im Significand eines double Werts.

Size

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

Eigenschaften

Name Beschreibung
Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
IsInfinite

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

IsNaN

Gibt zurück true , wenn dieser Double Wert eine Not-a-Number (NaN) ist, false andernfalls.

JniIdentityHashCode

Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist.

(Geerbt von Object)
JniManagedPeerState

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

(Geerbt von JavaObject)
JniPeerMembers

Ruft die JNI-Metadaten ab, die zum Aufrufen von Mitgliedern dieses Java Peers verwendet werden.

PeerReference

Ruft den JNI-Objektverweis für diesen Java Peer ab.

(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 Instanz, die den Grundtyp doubledarstellt.

Methoden

Name Beschreibung
ByteValue()

Gibt den Wert der angegebenen Zahl als ein 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.

Construct(JniObjectReference, JniObjectReferenceOptions)

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

(Geerbt von JavaObject)
Dispose()

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
Dispose(Boolean)

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
DisposeUnlessReferenced()

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

(Geerbt von JavaObject)
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 not-a-Number (NaN)-Werte beibehalten werden.

DoubleValue()

Gibt den double Wert dieses Double Objekts zurück.

Equals(Object)

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

(Geerbt von JavaObject)
Equals(Object)

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

(Geerbt von Object)
FloatValue()

Gibt den Wert dieses Double Werts als nach float einer schmalen Grundtypkonvertierung zurück.

GetHashCode()

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

(Geerbt von Object)
HashCode(Double)

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

IntValue()

Gibt den Wert dieses Double Werts als int nach einer schmalen Grundtypkonvertierung zurück.

InvokeIsInfinite(Double)

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

InvokeIsNaN(Double)

Gibt zurück true , wenn die angegebene Zahl ein NaN-Wert (Not-a-Number) ist, false andernfalls.

IsFinite(Double)

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

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise 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 schmalen Grundtypkonvertierung zurück.

Max(Double, Double)

Gibt die größer als zwei double Werte zurück, als ob durch Aufrufen .Math#max(double, double) Math.max

Min(Double, Double)

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

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 StringWert dargestellt wird, wie es von der valueOf Methode der Klasse Doubleausgeführt wird.

SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

(Geerbt von JavaObject)
ShortValue()

Gibt den Wert der angegebenen Zahl als ein short.

(Geerbt von Number)
Sum(Double, Double)

Addiert zwei double Werte gemäß dem Operator +.

ToArray<T>()

Erstellt ein verwaltetes Array aus diesem Java Arraywrapper.

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

Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf.

(Geerbt von Object)
ValueOf(Double)

Gibt eine Double Instanz zurück, die den angegebenen double Wert darstellt.

ValueOf(String)

Gibt ein Double Objekt zurück, das den double Durch die Argumentzeichenfolge sdargestellten Wert enthält.

Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><>

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Operatoren

Name Beschreibung
Explicit(Double to Double)

Konvertiert den angegebenen Double Wert in Double.

Explizite Schnittstellenimplementierungen

Name Beschreibung
IComparable.CompareTo(Object)

Vergleicht diesen Wert mit dem angegebenen Objekt für die Sortierung.

IConvertible.GetTypeCode()

Gibt den Typcode für diesen Wert zurück.

IConvertible.ToBoolean(IFormatProvider)

Konvertiert diesen Wert in Boolean.

IConvertible.ToByte(IFormatProvider)

Konvertiert diesen Wert in Byte.

IConvertible.ToChar(IFormatProvider)

Konvertiert diesen Wert in Char.

IConvertible.ToDateTime(IFormatProvider)

Die Konvertierung in DateTime wird nicht unterstützt und löst aus InvalidCastException.

IConvertible.ToDecimal(IFormatProvider)

Konvertiert diesen Wert in Decimal.

IConvertible.ToDouble(IFormatProvider)

Konvertiert diesen Wert in Double.

IConvertible.ToInt16(IFormatProvider)

Konvertiert diesen Wert in Int16.

IConvertible.ToInt32(IFormatProvider)

Konvertiert diesen Wert in Int32.

IConvertible.ToInt64(IFormatProvider)

Konvertiert diesen Wert in Int64.

IConvertible.ToSByte(IFormatProvider)

Konvertiert diesen Wert in SByte.

IConvertible.ToSingle(IFormatProvider)

Konvertiert diesen Wert in Single.

IConvertible.ToString(IFormatProvider)

Konvertiert diesen Wert in String.

IConvertible.ToType(Type, IFormatProvider)

Wandelt diesen Wert in den durch conversionType.

IConvertible.ToUInt16(IFormatProvider)

Konvertiert diesen Wert in UInt16.

IConvertible.ToUInt32(IFormatProvider)

Konvertiert diesen Wert in UInt32.

IConvertible.ToUInt64(IFormatProvider)

Konvertiert diesen Wert in UInt64.

IJavaPeerable.Disposed()

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

(Geerbt von JavaObject)
IJavaPeerable.Finalized()

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

(Geerbt von JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

(Geerbt von JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

(Geerbt von JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

(Geerbt von JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

(Geerbt von JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

Erweiterungsmethoden

Name Beschreibung
GetJniTypeName(IJavaPeerable)

Ruft den JNI-Namen des Typs der Instanz selfab.

JavaAs<TResult>(IJavaPeerable)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

Die Double Klasse umschließt einen Wert des Grundtyps double in einem Objekt.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

Gilt für: