Double Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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(String) |
Erstellt ein neu zugeordnetes |
Felder
| Name | Beschreibung |
|---|---|
| Bytes |
Die Anzahl der Bytes, die zum Darstellen eines |
| MaxExponent |
Maximaler Exponent einer finiten |
| MaxValue |
Eine Konstante mit dem größten positiven endlichen Wert des Typs |
| MinExponent |
Eine normalisierte |
| MinNormal |
Eine Konstante, die den kleinsten positiven Normalwert des Typs |
| MinValue |
Eine Konstante, die den kleinsten positiven Nonzero-Wert des Typs |
| NaN |
Eine Konstante, die einen NaN-Wert (Not-a-Number) des Typs |
| NegativeInfinity |
Eine Konstante, die die negative Unendlichkeit des Typs |
| PositiveInfinity |
Eine Konstante, die die positive Unendlichkeit des Typs |
| Precision |
Die Anzahl der Bits im Significand eines |
| Size |
Die Anzahl der Bits, die zum Darstellen eines |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Class |
Gibt die Laufzeitklasse dieses Werts |
| Handle |
Das Handle für die zugrunde liegende Android-Instanz. (Geerbt von Object) |
| IsInfinite |
Gibt zurück |
| IsNaN |
Gibt zurück |
| JniIdentityHashCode |
Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist. (Geerbt von Object) |
| JniManagedPeerState |
Die |
| 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 |
Methoden
| Name | Beschreibung |
|---|---|
| ByteValue() |
Gibt den Wert der angegebenen Zahl als ein |
| Clone() |
Erstellt und gibt eine Kopie dieses Objekts zurück. (Geerbt von Object) |
| Compare(Double, Double) |
Vergleicht die beiden angegebenen |
| CompareTo(Double) |
Vergleicht zwei |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Die |
| 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 |
| 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 |
| Equals(Object) |
Die |
| Equals(Object) |
Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist. (Geerbt von Object) |
| FloatValue() |
Gibt den Wert dieses |
| GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
| HashCode(Double) |
Gibt einen Hashcode für einen |
| IntValue() |
Gibt den Wert dieses |
| InvokeIsInfinite(Double) |
Gibt zurück |
| InvokeIsNaN(Double) |
Gibt zurück |
| IsFinite(Double) |
Gibt zurück |
| 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 |
| LongValue() |
Gibt den Wert dieses |
| Max(Double, Double) |
Gibt die größer als zwei |
| Min(Double, Double) |
Gibt die kleineren von zwei |
| 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 |
| SetHandle(IntPtr, JniHandleOwnership) |
Legt die Handle-Eigenschaft fest. (Geerbt von Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Die |
| ShortValue() |
Gibt den Wert der angegebenen Zahl als ein |
| Sum(Double, Double) |
Addiert zwei |
| ToArray<T>() |
Erstellt ein verwaltetes Array aus diesem Java Arraywrapper. (Geerbt von Object) |
| ToHexString(Double) |
Gibt eine hexadezimale Zeichenfolgendarstellung des |
| ToString() |
Gibt eine Zeichenfolgendarstellung des Objekts zurück. (Geerbt von Object) |
| ToString(Double) |
Gibt eine Zeichenfolgendarstellung des |
| UnregisterFromRuntime() |
Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf. (Geerbt von Object) |
| ValueOf(Double) |
Gibt eine |
| ValueOf(String) |
Gibt ein |
| 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 |
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 |
| IConvertible.ToByte(IFormatProvider) |
Konvertiert diesen Wert in |
| IConvertible.ToChar(IFormatProvider) |
Konvertiert diesen Wert in |
| IConvertible.ToDateTime(IFormatProvider) |
Die Konvertierung in |
| IConvertible.ToDecimal(IFormatProvider) |
Konvertiert diesen Wert in |
| IConvertible.ToDouble(IFormatProvider) |
Konvertiert diesen Wert in |
| IConvertible.ToInt16(IFormatProvider) |
Konvertiert diesen Wert in |
| IConvertible.ToInt32(IFormatProvider) |
Konvertiert diesen Wert in |
| IConvertible.ToInt64(IFormatProvider) |
Konvertiert diesen Wert in |
| IConvertible.ToSByte(IFormatProvider) |
Konvertiert diesen Wert in |
| IConvertible.ToSingle(IFormatProvider) |
Konvertiert diesen Wert in |
| IConvertible.ToString(IFormatProvider) |
Konvertiert diesen Wert in |
| IConvertible.ToType(Type, IFormatProvider) |
Wandelt diesen Wert in den durch |
| IConvertible.ToUInt16(IFormatProvider) |
Konvertiert diesen Wert in |
| IConvertible.ToUInt32(IFormatProvider) |
Konvertiert diesen Wert in |
| IConvertible.ToUInt64(IFormatProvider) |
Konvertiert diesen Wert in |
| IJavaPeerable.Disposed() |
Die |
| IJavaPeerable.Finalized() |
Die |
| IJavaPeerable.JniObjectReferenceControlBlock |
Die |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Die |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Die |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Die |
| IJavaPeerable.UnregisterFromRuntime() |
Die |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ruft den JNI-Namen des Typs der Instanz |
| JavaAs<TResult>(IJavaPeerable) |
Versuchen Sie, die Eingabe |
| JavaCast<TResult>(IJavaObject) |
Führt eine android-laufzeitgecheckte Typkonvertierung aus. |
| JavaCast<TResult>(IJavaObject) |
Die |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |