Decimal Struktur

Definition

Stellt eine dezimale Gleitkommazahl dar.

public value class System::Decimal : IComparable, IComparable<System::Decimal>, IConvertible, IEquatable<System::Decimal>, IFormattable
public value class System::Decimal : IComparable, IComparable<System::Decimal>, IConvertible, IEquatable<System::Decimal>, IFormattable, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
public value class System::Decimal : IComparable, IComparable<System::Decimal>, IConvertible, IEquatable<System::Decimal>, ISpanFormattable, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
public value class System::Decimal : IComparable<System::Decimal>, IConvertible, IEquatable<System::Decimal>, IParsable<System::Decimal>, ISpanParsable<System::Decimal>, System::Numerics::IAdditionOperators<System::Decimal, System::Decimal, System::Decimal>, System::Numerics::IAdditiveIdentity<System::Decimal, System::Decimal>, System::Numerics::IComparisonOperators<System::Decimal, System::Decimal, bool>, System::Numerics::IDecrementOperators<System::Decimal>, System::Numerics::IDivisionOperators<System::Decimal, System::Decimal, System::Decimal>, System::Numerics::IEqualityOperators<System::Decimal, System::Decimal, bool>, System::Numerics::IFloatingPoint<System::Decimal>, System::Numerics::IFloatingPointConstants<System::Decimal>, System::Numerics::IIncrementOperators<System::Decimal>, System::Numerics::IMinMaxValue<System::Decimal>, System::Numerics::IModulusOperators<System::Decimal, System::Decimal, System::Decimal>, System::Numerics::IMultiplicativeIdentity<System::Decimal, System::Decimal>, System::Numerics::IMultiplyOperators<System::Decimal, System::Decimal, System::Decimal>, System::Numerics::INumber<System::Decimal>, System::Numerics::INumberBase<System::Decimal>, System::Numerics::ISignedNumber<System::Decimal>, System::Numerics::ISubtractionOperators<System::Decimal, System::Decimal, System::Decimal>, System::Numerics::IUnaryNegationOperators<System::Decimal, System::Decimal>, System::Numerics::IUnaryPlusOperators<System::Decimal, System::Decimal>, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
public value class System::Decimal : IComparable, IComparable<System::Decimal>, IConvertible, IEquatable<System::Decimal>, IFormattable, System::Runtime::Serialization::IDeserializationCallback
public value class System::Decimal : IComparable, IConvertible, IFormattable
public value class System::Decimal : IComparable, IComparable<System::Decimal>, IEquatable<System::Decimal>, IFormattable
public struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, IFormattable
public readonly struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, IFormattable, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
public readonly struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, ISpanFormattable, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
public readonly struct Decimal : IComparable<decimal>, IConvertible, IEquatable<decimal>, IParsable<decimal>, ISpanParsable<decimal>, System.Numerics.IAdditionOperators<decimal,decimal,decimal>, System.Numerics.IAdditiveIdentity<decimal,decimal>, System.Numerics.IComparisonOperators<decimal,decimal,bool>, System.Numerics.IDecrementOperators<decimal>, System.Numerics.IDivisionOperators<decimal,decimal,decimal>, System.Numerics.IEqualityOperators<decimal,decimal,bool>, System.Numerics.IFloatingPoint<decimal>, System.Numerics.IFloatingPointConstants<decimal>, System.Numerics.IIncrementOperators<decimal>, System.Numerics.IMinMaxValue<decimal>, System.Numerics.IModulusOperators<decimal,decimal,decimal>, System.Numerics.IMultiplicativeIdentity<decimal,decimal>, System.Numerics.IMultiplyOperators<decimal,decimal,decimal>, System.Numerics.INumber<decimal>, System.Numerics.INumberBase<decimal>, System.Numerics.ISignedNumber<decimal>, System.Numerics.ISubtractionOperators<decimal,decimal,decimal>, System.Numerics.IUnaryNegationOperators<decimal,decimal>, System.Numerics.IUnaryPlusOperators<decimal,decimal>, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
public struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, IFormattable, System.Runtime.Serialization.IDeserializationCallback
public readonly struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, IFormattable, System.Runtime.Serialization.IDeserializationCallback
[System.Serializable]
public struct Decimal : IComparable, IConvertible, IFormattable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, IFormattable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, IFormattable, System.Runtime.Serialization.IDeserializationCallback
public struct Decimal : IComparable, IComparable<decimal>, IEquatable<decimal>, IFormattable
type decimal = struct
    interface IConvertible
    interface IFormattable
type decimal = struct
    interface IConvertible
    interface IFormattable
    interface IDeserializationCallback
    interface ISerializable
type decimal = struct
    interface IConvertible
    interface ISpanFormattable
    interface IFormattable
    interface IDeserializationCallback
    interface ISerializable
type decimal = struct
    interface IConvertible
    interface IFormattable
    interface IParsable<decimal>
    interface ISpanFormattable
    interface ISpanParsable<decimal>
    interface IAdditionOperators<decimal, decimal, decimal>
    interface IAdditiveIdentity<decimal, decimal>
    interface IComparisonOperators<decimal, decimal, bool>
    interface IEqualityOperators<decimal, decimal, bool>
    interface IDecrementOperators<decimal>
    interface IDivisionOperators<decimal, decimal, decimal>
    interface IFloatingPoint<decimal>
    interface IFloatingPointConstants<decimal>
    interface INumberBase<decimal>
    interface IIncrementOperators<decimal>
    interface IMultiplicativeIdentity<decimal, decimal>
    interface IMultiplyOperators<decimal, decimal, decimal>
    interface ISubtractionOperators<decimal, decimal, decimal>
    interface IUnaryNegationOperators<decimal, decimal>
    interface IUnaryPlusOperators<decimal, decimal>
    interface IModulusOperators<decimal, decimal, decimal>
    interface INumber<decimal>
    interface ISignedNumber<decimal>
    interface IMinMaxValue<decimal>
    interface IDeserializationCallback
    interface ISerializable
type decimal = struct
    interface IConvertible
    interface IFormattable
    interface IDeserializationCallback
[<System.Serializable>]
type decimal = struct
    interface IFormattable
    interface IConvertible
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type decimal = struct
    interface IFormattable
    interface IConvertible
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type decimal = struct
    interface IFormattable
    interface IConvertible
    interface IDeserializationCallback
type decimal = struct
    interface IFormattable
Public Structure Decimal
Implements IComparable, IComparable(Of Decimal), IConvertible, IEquatable(Of Decimal), IFormattable
Public Structure Decimal
Implements IComparable, IComparable(Of Decimal), IConvertible, IDeserializationCallback, IEquatable(Of Decimal), IFormattable, ISerializable
Public Structure Decimal
Implements IComparable, IComparable(Of Decimal), IConvertible, IDeserializationCallback, IEquatable(Of Decimal), ISerializable, ISpanFormattable
Public Structure Decimal
Implements IAdditionOperators(Of Decimal, Decimal, Decimal), IAdditiveIdentity(Of Decimal, Decimal), IComparable(Of Decimal), IComparisonOperators(Of Decimal, Decimal, Boolean), IConvertible, IDecrementOperators(Of Decimal), IDeserializationCallback, IDivisionOperators(Of Decimal, Decimal, Decimal), IEqualityOperators(Of Decimal, Decimal, Boolean), IEquatable(Of Decimal), IFloatingPoint(Of Decimal), IFloatingPointConstants(Of Decimal), IIncrementOperators(Of Decimal), IMinMaxValue(Of Decimal), IModulusOperators(Of Decimal, Decimal, Decimal), IMultiplicativeIdentity(Of Decimal, Decimal), IMultiplyOperators(Of Decimal, Decimal, Decimal), INumber(Of Decimal), INumberBase(Of Decimal), IParsable(Of Decimal), ISerializable, ISignedNumber(Of Decimal), ISpanParsable(Of Decimal), ISubtractionOperators(Of Decimal, Decimal, Decimal), IUnaryNegationOperators(Of Decimal, Decimal), IUnaryPlusOperators(Of Decimal, Decimal)
Public Structure Decimal
Implements IComparable, IComparable(Of Decimal), IConvertible, IDeserializationCallback, IEquatable(Of Decimal), IFormattable
Public Structure Decimal
Implements IComparable, IConvertible, IFormattable
Public Structure Decimal
Implements IComparable, IComparable(Of Decimal), IEquatable(Of Decimal), IFormattable
Vererbung
Decimal
Attribute
Implementiert
IComparable IComparable<Decimal> IConvertible IEquatable<Decimal> IFormattable IDeserializationCallback ISerializable ISpanFormattable IComparable<TSelf> IEquatable<TSelf> IParsable<Decimal> IParsable<TSelf> ISpanParsable<Decimal> ISpanParsable<TSelf> IAdditionOperators<Decimal,Decimal,Decimal> IAdditionOperators<TSelf,TSelf,TSelf> IAdditiveIdentity<Decimal,Decimal> IAdditiveIdentity<TSelf,TSelf> IComparisonOperators<Decimal,Decimal,Boolean> IComparisonOperators<TSelf,TSelf,Boolean> IDecrementOperators<Decimal> IDecrementOperators<TSelf> IDivisionOperators<Decimal,Decimal,Decimal> IDivisionOperators<TSelf,TSelf,TSelf> IEqualityOperators<Decimal,Decimal,Boolean> IEqualityOperators<TSelf,TOther,TResult> IEqualityOperators<TSelf,TSelf,Boolean> IFloatingPoint<Decimal> IFloatingPointConstants<Decimal> IFloatingPointConstants<TSelf> IIncrementOperators<Decimal> IIncrementOperators<TSelf> IMinMaxValue<Decimal> IModulusOperators<Decimal,Decimal,Decimal> IModulusOperators<TSelf,TSelf,TSelf> IMultiplicativeIdentity<Decimal,Decimal> IMultiplicativeIdentity<TSelf,TSelf> IMultiplyOperators<Decimal,Decimal,Decimal> IMultiplyOperators<TSelf,TSelf,TSelf> INumber<Decimal> INumber<TSelf> INumberBase<Decimal> INumberBase<TSelf> ISignedNumber<Decimal> ISignedNumber<TSelf> ISubtractionOperators<Decimal,Decimal,Decimal> ISubtractionOperators<TSelf,TSelf,TSelf> IUnaryNegationOperators<Decimal,Decimal> IUnaryNegationOperators<TSelf,TSelf> IUnaryPlusOperators<Decimal,Decimal> IUnaryPlusOperators<TSelf,TSelf>

Beispiele

Das folgende Codebeispiel veranschaulicht die Verwendung von Decimal.

   /// <summary>
   /// Keeping my fortune in Decimals to avoid the round-off errors.
   /// </summary>
   public ref class PiggyBank
   {
   protected:
      Decimal MyFortune;

   public:
      void AddPenny()
      {
         MyFortune = System::Decimal::Add( MyFortune, Decimal(.01) );
      }

      System::Decimal Capacity()
      {
         return MyFortune.MaxValue;
      }

      Decimal Dollars()
      {
         return Decimal::Floor( MyFortune );
      }

      Decimal Cents()
      {
         return Decimal::Subtract( MyFortune, Decimal::Floor( MyFortune ) );
      }

      virtual System::String^ ToString() override
      {
         return MyFortune.ToString("C")+" in piggy bank";
      }
   };
}
/// <summary>
/// Keeping my fortune in Decimals to avoid the round-off errors.
/// </summary>
class PiggyBank {
    protected decimal MyFortune;

    public void AddPenny() {
        MyFortune = Decimal.Add(MyFortune, .01m);
    }

    public decimal Capacity {
        get {
            return Decimal.MaxValue;
        }
    }

    public decimal Dollars {
        get {
            return Decimal.Floor(MyFortune);
        }
    }

    public decimal Cents {
        get {
            return Decimal.Subtract(MyFortune, Decimal.Floor(MyFortune));
        }
    }

    public override string ToString() {
        return MyFortune.ToString("C")+" in piggy bank";
    }
}
/// Keeping my fortune in Decimals to avoid the round-off errors.
type PiggyBank() =
    let mutable myFortune = 0m

    member _.AddPenny() =
        myFortune <- Decimal.Add(myFortune, 0.01m)

    member _.Capacity =
        Decimal.MaxValue

    member _.Dollars =
        Decimal.Floor myFortune

    member _.Cents =
        Decimal.Subtract(myFortune, Decimal.Floor myFortune)

    override _.ToString() =
        $"{myFortune:C} in piggy bank"
' Keeping my fortune in Decimals to avoid the round-off errors.
Class PiggyBank
    Protected MyFortune As Decimal

    Public Sub AddPenny()
        MyFortune = [Decimal].Add(MyFortune, 0.01D)
    End Sub

    Public ReadOnly Property Capacity() As Decimal
        Get
            Return [Decimal].MaxValue
        End Get
    End Property

    Public ReadOnly Property Dollars() As Decimal
        Get
            Return [Decimal].Floor(MyFortune)
        End Get
    End Property

    Public ReadOnly Property Cents() As Decimal
        Get
            Return [Decimal].Subtract(MyFortune, [Decimal].Floor(MyFortune))
        End Get
    End Property

    Public Overrides Function ToString() As String
        Return MyFortune.ToString("C") + " in piggy bank"
    End Function
End Class

Hinweise

Der Decimal Werttyp stellt Dezimalzahlen im Bereich von positiven 79.228.162.514.264.337.593.543.950,950 dar. 335 bis negativ 79.228.162.514.264.337.593.543.950.335. Der Standardwert eines Decimal ist 0. Der Decimal Werttyp eignet sich für Finanzberechnungen, die eine große Anzahl signifikanter Integral- und Bruchziffern und keine Rundungsfehler erfordern. Der Decimal Typ entfällt nicht die Notwendigkeit einer Rundung. Stattdessen reduziert er Fehler, die beim Runden auftreten. Der folgende Code erzeugt beispielsweise ein Ergebnis von 0,9999999999999999999999999999999999999999 anstelle von 1.

using namespace System;

void main()
{
   Decimal dividend = Decimal::One;
   Decimal divisor = 3;
   // The following displays 0.9999999999999999999999999999 to the console
   Console::WriteLine(dividend/divisor * divisor);   
}
decimal dividend = Decimal.One;
decimal divisor = 3;
// The following displays 0.9999999999999999999999999999 to the console
Console.WriteLine(dividend/divisor * divisor);
let dividend = Decimal.One
let divisor = 3m
// The following displays 0.9999999999999999999999999999 to the console
printfn $"{dividend/divisor * divisor}"
Dim dividend As Decimal = Decimal.One
Dim divisor As Decimal = 3
' The following displays 0.9999999999999999999999999999 to the console
Console.WriteLine(dividend/divisor * divisor)

Wenn das Ergebnis der Division und Multiplikation an die Round -Methode übergeben wird, kommt es zu keinem Genauigkeitsverlust, wie im folgenden Code gezeigt.

using namespace System;


void main()
{
   Decimal dividend = Decimal::One;
   Decimal divisor = 3;
   // The following displays 1.00 to the console
   Console::WriteLine(Math::Round(dividend/divisor * divisor, 2));   	
}
decimal dividend = Decimal.One;
decimal divisor = 3;
// The following displays 1.00 to the console
Console.WriteLine(Math.Round(dividend/divisor * divisor, 2));
let dividend = Decimal.One
let divisor = 3m
// The following displays 1.00 to the console
printfn $"{Math.Round(dividend/divisor * divisor, 2)}"
Dim dividend As Decimal = Decimal.One
Dim divisor As Decimal = 3
' The following displays 1.00 to the console
Console.WriteLine(Math.Round(dividend/divisor * divisor, 2))

Eine Dezimalzahl ist ein Gleitkommawert, der aus einem Vorzeichen, einem numerischen Wert besteht, bei dem jede Ziffer im Wert von 0 bis 9 liegt, und einem Skalierungsfaktor, der die Position eines Gleitkommakommas angibt, der die Integral- und Bruchteile des numerischen Werts trennt.

Die binäre Darstellung eines Decimal Werts besteht aus 128 Bits, die aus einer 96-Bit-Ganzzahl und einem 32-Bit-Satz von Flags bestehen, die Dinge wie das Vorzeichen und den Skalierungsfaktor darstellen, der verwendet wird, um anzugeben, welcher Teil davon ein Dezimalbruch ist. Daher ist die binäre Darstellung eines Decimal Werts die Form ((-296 bis 296) / 10(0 bis 28)), wobei -(296-1) gleich MinValueist und 296-1 gleich MaxValueist. Weitere Informationen zur binären Darstellung von Decimal Werten und ein Beispiel finden Sie unter Decimal(Int32[]) Konstruktor und GetBits Methode.

Der Skalierungsfaktor behält auch alle nachfolgenden Nullen in einer Decimal Zahl bei. Nachfolgende Nullen wirken sich nicht auf den Wert einer Decimal Zahl in arithmetischen oder Vergleichsvorgängen aus. Nachfolgende Nullen können jedoch von der ToString -Methode angezeigt werden, wenn eine geeignete Formatzeichenfolge angewendet wird.

Überlegungen zur Konvertierung

Dieser Typ stellt Methoden bereit, die Werte in und von SByte, , Int16Int32, Int64, Byte, UInt32UInt16, und UInt64 konvertierenDecimal. Konvertierungen von diesen integralen Typen in Decimal sind erweiternde Konvertierungen, die niemals Informationen verlieren oder Ausnahmen auslösen.

Konvertierungen von Decimal in einen der integralen Typen sind eingrenzende Konvertierungen, die den Decimal Wert auf den nächsten ganzzahligen Wert in Richtung 0 runden. Einige Sprachen, z. B. C#, unterstützen auch die Konvertierung von Decimal Werten in Char Werte. Wenn das Ergebnis dieser Konvertierungen nicht im Zieltyp dargestellt werden kann, wird eine OverflowException Ausnahme ausgelöst.

Der Decimal Typ stellt auch Methoden bereit, die Werte in und von Single - und Double -Werten konvertierenDecimal. Konvertierungen von Decimal in Single oder Double sind einschränkende Konvertierungen, die möglicherweise an Genauigkeit verlieren, aber keine Informationen über die Größe des konvertierten Werts. Die Konvertierung löst keine Ausnahme aus.

Konvertierungen von Single oderDouble, um eine OverflowException Ausnahme auszulösenDecimal, wenn das Ergebnis der Konvertierung nicht als Decimaldargestellt werden kann.

Ausführen von Vorgängen für Dezimalwerte

Der Decimal Typ unterstützt mathematische Standardoperationen wie Addition, Subtraktion, Division, Multiplikation und unäre Negation. Sie können auch direkt mit der binären Darstellung eines Decimal Werts arbeiten, indem Sie die GetBits -Methode aufrufen.

Um zwei Decimal Werte zu vergleichen, können Sie die standardmäßigen numerischen Vergleichsoperatoren verwenden, oder Sie können die - oder Equals -CompareToMethode aufrufen.

Sie können auch die Member der Math -Klasse aufrufen, um einen breiten Bereich von numerischen Vorgängen auszuführen, einschließlich des Abrufens des absoluten Werts einer Zahl, Bestimmen des maximalen oder minimalen Werts von zwei Decimal Werten, Abrufen des Vorzeichens einer Zahl und Runden einer Zahl.

Konstruktoren

Decimal(Double)

Initialisiert eine neue Instanz von Decimal mit dem Wert der angegebenen Gleitkommazahl mit doppelter Genauigkeit.

Decimal(Int32)

Initialisiert eine neue Instanz von Decimal mit dem Wert einer angegebenen 32-Bit-Ganzzahl mit Vorzeichen.

Decimal(Int32, Int32, Int32, Boolean, Byte)

Initialisiert einen neue Instanz von Decimal mit Parametern, die die Bestandteile der Instanz angeben.

Decimal(Int32[])

Initialisiert eine neue Instanz von Decimal mit einem binär dargestellten Decimal-Wert in einem angegebenen Array.

Decimal(Int64)

Initialisiert eine neue Instanz von Decimal mit dem Wert einer angegebenen 64-Bit-Ganzzahl mit Vorzeichen.

Decimal(ReadOnlySpan<Int32>)

Initialisiert eine neue Instanz von zu Decimal einem Dezimalwert, der in binär dargestellt und in der angegebenen Spanne enthalten ist.

Decimal(Single)

Initialisiert eine neue Instanz von Decimal mit dem Wert der angegebenen Gleitkommazahl mit einfacher Genauigkeit.

Decimal(UInt32)

Initialisiert eine neue Instanz von Decimal mit dem Wert einer angegebenen 32-Bit-Ganzzahl ohne Vorzeichen.

Decimal(UInt64)

Initialisiert eine neue Instanz von Decimal mit dem Wert einer angegebenen 64-Bit-Ganzzahl ohne Vorzeichen.

Felder

MaxValue

Stellt den größtmöglichen Wert von Decimal dar. Dieses Feld ist konstant und schreibgeschützt.

MinusOne

Stellt die Zahl -1 dar.

MinValue

Stellt den kleinstmöglichen Wert von Decimal dar. Dieses Feld ist konstant und schreibgeschützt.

One

Stellt die Zahl 1 dar.

Zero

Stellt die Zahl 0 (null) dar.

Eigenschaften

Scale

Ruft den Skalierungsfaktor des Dezimaltrennzeichens ab, bei dem es sich um eine Zahl von 0 bis 28 handelt, die die Anzahl der Dezimalstellen darstellt.

Methoden

Abs(Decimal)

Berechnet das Absolute eines Werts.

Add(Decimal, Decimal)

Addiert zwei angegebene Decimal-Werte.

Ceiling(Decimal)

Gibt den kleinsten ganzzahligen Wert zurück, der größer oder gleich der angegebenen Dezimalzahl ist.

Clamp(Decimal, Decimal, Decimal)

Klemmt einen Wert auf einen inklusiven Minimal- und Maximalwert.

Compare(Decimal, Decimal)

Vergleicht zwei angegebene Decimal-Werte.

CompareTo(Decimal)

Vergleicht diese Instanz mit einem angegebenen Decimal-Objekt und gibt einen Vergleich der entsprechenden Werte zurück.

CompareTo(Object)

Vergleicht diese Instanz mit einem angegebenen Objekt und gibt einen Vergleich der entsprechenden Werte zurück.

CopySign(Decimal, Decimal)

Kopiert das Zeichen eines Werts in das Zeichen eines anderen Werts.

CreateChecked<TOther>(TOther)

Erstellt eine Instanz des aktuellen Typs aus einem Wert und löst eine Überlaufausnahme für alle Werte aus, die außerhalb des darstellbaren Bereichs des aktuellen Typs liegen.

CreateSaturating<TOther>(TOther)

Erstellt eine Instanz des aktuellen Typs aus einem Wert und überlastt alle Werte, die außerhalb des darstellbaren Bereichs des aktuellen Typs liegen.

CreateTruncating<TOther>(TOther)

Erstellt eine Instanz des aktuellen Typs aus einem Wert und schneidet alle Werte ab, die außerhalb des darstellbaren Bereichs des aktuellen Typs liegen.

Divide(Decimal, Decimal)

Dividiert zwei angegebene Decimal-Werte.

Equals(Decimal)

Gibt einen Wert zurück, der angibt, ob diese Instanz und ein angegebenes Decimal-Objekt den gleichen Wert darstellen.

Equals(Decimal, Decimal)

Gibt einen Wert zurück, der angibt, ob zwei angegebene Instanzen von Decimal denselben Wert darstellen.

Equals(Object)

Gibt einen Wert zurück, der angibt, ob diese Instanz und ein angegebenes Object denselben Typ und Wert darstellen.

Floor(Decimal)

Rundet eine angegebene Decimal-Zahl auf die nächste Ganzzahl in Richtung minus unendlich.

FromOACurrency(Int64)

Konvertiert die angegebene 64-Bit-Ganzzahl mit Vorzeichen, die einen Currency-Wert für OLE-Automatisierung enthält, in den entsprechenden Decimal-Wert.

GetBits(Decimal)

Konvertiert den Wert einer angegebenen Instanz von Decimal in die entsprechende binäre Darstellung.

GetBits(Decimal, Span<Int32>)

Konvertiert den Wert einer angegebenen Instanz von Decimal in die entsprechende binäre Darstellung.

GetHashCode()

Gibt den Hashcode für diese Instanz zurück.

GetTypeCode()

Gibt den TypeCode für den Werttyp Decimal zurück.

IsCanonical(Decimal)

Bestimmt, ob sich ein Wert in seiner kanonischen Darstellung befindet.

IsEvenInteger(Decimal)

Bestimmt, ob ein Wert eine gerade Integralzahl darstellt.

IsInteger(Decimal)

Bestimmt, ob ein Wert eine integrale Zahl darstellt.

IsNegative(Decimal)

Bestimmt, ob ein Wert negativ ist.

IsOddInteger(Decimal)

Bestimmt, ob ein Wert eine ungerade Integralzahl darstellt.

IsPositive(Decimal)

Bestimmt, ob ein Wert positiv ist.

Max(Decimal, Decimal)

Vergleicht zwei Werte mit der Berechnung, die größer ist.

MaxMagnitude(Decimal, Decimal)

Vergleicht zwei Werte mit der Berechnung, die größer ist.

Min(Decimal, Decimal)

Vergleicht zwei Werte mit der Berechnung, die kleiner ist.

MinMagnitude(Decimal, Decimal)

Vergleicht zwei Werte mit der Berechnung, die kleiner ist.

Multiply(Decimal, Decimal)

Multipliziert zwei angegebene Decimal-Werte.

Negate(Decimal)

Gibt das Ergebnis der Multiplikation des angegebenen Decimal-Werts mit -1 zurück.

Parse(ReadOnlySpan<Char>, IFormatProvider)

Analysiert eine Spanne von Zeichen in einen Wert.

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)

Konvertiert die Spannendarstellung einer Zahl unter Verwendung des angegebenen Stils und kulturspezifischer Formatierungsinformationen in die Decimal-Entsprechung.

Parse(String)

Wandelt die angegebene Zeichenfolgendarstellung einer Zahl in ihre Decimal-Entsprechung um.

Parse(String, IFormatProvider)

Konvertiert die Zeichenfolgendarstellung einer Zahl unter Verwendung der angegebenen kulturspezifischen Formatierungsinformationen in die Decimal-Entsprechung.

Parse(String, NumberStyles)

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil in die Decimal-Entsprechung.

Parse(String, NumberStyles, IFormatProvider)

Konvertiert die Zeichenfolgendarstellung einer Zahl unter Verwendung des angegebenen Stils und kulturspezifischer Formatierungsinformationen in die Decimal-Entsprechung.

Remainder(Decimal, Decimal)

Berechnet den Rest der Division zweier Decimal-Werte.

Round(Decimal)

Rundet einen Decimal-Wert auf die nächste Ganzzahl.

Round(Decimal, Int32)

Rundet einen Decimal-Wert auf die angegebene Anzahl von Dezimalstellen.

Round(Decimal, Int32, MidpointRounding)

Rundet einen Dezimalwert mithilfe der angegebenen Rundungsstrategie auf die angegebene Genauigkeit.

Round(Decimal, MidpointRounding)

Rundet einen Dezimalwert mithilfe der angegebenen Rundungsstrategie auf eine ganze Zahl.

Sign(Decimal)

Berechnet das Vorzeichen eines Werts.

Subtract(Decimal, Decimal)

Subtrahiert einen angegebenen Decimal-Wert von einem anderen.

ToByte(Decimal)

Konvertiert den Wert des angegebenen Decimal in die entsprechende 8-Bit-Ganzzahl ohne Vorzeichen.

ToDouble(Decimal)

Konvertiert den Wert des angegebenen Decimal in die entsprechende Gleitkommazahl mit doppelter Genauigkeit.

ToInt16(Decimal)

Konvertiert den Wert des angegebenen Decimal in die entsprechende 16-Bit-Ganzzahl mit Vorzeichen.

ToInt32(Decimal)

Konvertiert den Wert des angegebenen Decimal in die entsprechende 32-Bit-Ganzzahl mit Vorzeichen.

ToInt64(Decimal)

Konvertiert den Wert des angegebenen Decimal in die entsprechende 64-Bit-Ganzzahl mit Vorzeichen.

ToOACurrency(Decimal)

Konvertiert den angegebenen Decimal-Wert in den entsprechenden Currency-Wert für OLE-Automatisierung, der in einer 64-Bit-Ganzzahl mit Vorzeichen enthalten ist.

ToSByte(Decimal)

Konvertiert den Wert des angegebenen Decimal in die entsprechende 8-Bit-Ganzzahl mit Vorzeichen.

ToSingle(Decimal)

Konvertiert den Wert des angegebenen Decimal in die entsprechende Gleitkommazahl mit einfacher Genauigkeit.

ToString()

Konvertiert den Wert dieser Instanz in die entsprechende Zeichenfolgendarstellung.

ToString(IFormatProvider)

Konvertiert den numerischen Wert dieser Instanz unter Berücksichtigung der angegebenen kulturabhängigen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToString(String)

Konvertiert den numerischen Wert dieser Instanz in die entsprechende Zeichenfolgendarstellung unter Berücksichtigung des angegebenen Formats.

ToString(String, IFormatProvider)

Konvertiert den numerischen Wert dieser Instanz unter Verwendung des angegebenen Formats und der angegebenen kulturabhängigen Formatierungsinformationen in die entsprechende Zeichenfolgendarstellung.

ToUInt16(Decimal)

Konvertiert den Wert des angegebenen Decimal in die entsprechende 16-Bit-Ganzzahl ohne Vorzeichen.

ToUInt32(Decimal)

Konvertiert den Wert des angegebenen Decimal in die entsprechende 32-Bit-Ganzzahl ohne Vorzeichen.

ToUInt64(Decimal)

Konvertiert den Wert des angegebenen Decimal in die entsprechende 64-Bit-Ganzzahl ohne Vorzeichen.

Truncate(Decimal)

Gibt den ganzzahligen Teil des angegebenen Decimal zurück; Bruchziffern werden verworfen.

TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider)

Versucht, den Wert der aktuellen Instanz der Dezimalzahl in die angegebene Zeichenspanne zu formatieren.

TryGetBits(Decimal, Span<Int32>, Int32)

Versucht, den Wert einer angegebenen Instanz von Decimal in die entsprechende Binärdarstellung zu konvertieren.

TryParse(ReadOnlySpan<Char>, Decimal)

Konvertiert die Spannendarstellung einer Zahl unter Verwendung des angegebenen Stils und kulturspezifischer Formatierungsinformationen in die Decimal-Entsprechung. Ein Rückgabewert gibt an, ob die Konvertierung erfolgreich war oder nicht.

TryParse(ReadOnlySpan<Char>, IFormatProvider, Decimal)

Versucht, eine Spanne von Zeichen in einen Wert zu analysieren.

TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Decimal)

Konvertiert die Spannendarstellung einer Zahl unter Verwendung des angegebenen Stils und kulturspezifischer Formatierungsinformationen in die Decimal-Entsprechung. Ein Rückgabewert gibt an, ob die Konvertierung erfolgreich war oder nicht.

TryParse(String, Decimal)

Wandelt die angegebene Zeichenfolgendarstellung einer Zahl in ihre Decimal-Entsprechung um. Ein Rückgabewert gibt an, ob die Konvertierung erfolgreich war oder nicht.

TryParse(String, IFormatProvider, Decimal)

Versucht, eine Zeichenfolge in einen Wert zu analysieren.

TryParse(String, NumberStyles, IFormatProvider, Decimal)

Konvertiert die Zeichenfolgendarstellung einer Zahl unter Verwendung des angegebenen Stils und kulturspezifischer Formatierungsinformationen in die Decimal-Entsprechung. Ein Rückgabewert gibt an, ob die Konvertierung erfolgreich war oder nicht.

Operatoren

Addition(Decimal, Decimal)

Addiert zwei angegebene Decimal-Werte.

Decrement(Decimal)

Verringert den Decimal-Operanden um 1.

Division(Decimal, Decimal)

Dividiert zwei angegebene Decimal-Werte.

Equality(Decimal, Decimal)

Gibt einen Wert zurück, der angibt, ob zwei Decimal Werte gleich sind.

Explicit(Decimal to Byte)

Definiert eine explizite Konvertierung einer Decimal in eine 8-Bit Ganzzahl ohne Vorzeichen.

Explicit(Decimal to Char)

Definiert eine explizite Konvertierung einer Decimal in ein Unicodezeichen.

Explicit(Decimal to Double)

Definiert eine explizite Konvertierung einer Decimal in eine Gleitkommazahl mit doppelter Genauigkeit.

Explicit(Decimal to Int16)

Definiert eine explizite Konvertierung einer Decimal in eine 16-Bit Ganzzahl mit Vorzeichen.

Explicit(Decimal to Int32)

Definiert eine explizite Konvertierung einer Decimal in eine 32-Bit Ganzzahl mit Vorzeichen.

Explicit(Decimal to Int64)

Definiert eine explizite Konvertierung einer Decimal in eine 64-Bit Ganzzahl mit Vorzeichen.

Explicit(Decimal to SByte)

Definiert eine explizite Konvertierung einer Decimal in eine 8-Bit Ganzzahl mit Vorzeichen.

Diese API ist nicht CLS-kompatibel.

Explicit(Decimal to Single)

Definiert eine explizite Konvertierung einer Decimal in eine Gleitkommazahl mit einfacher Genauigkeit.

Explicit(Decimal to UInt16)

Definiert eine explizite Konvertierung einer Decimal in eine 16-Bit Ganzzahl ohne Vorzeichen.

Diese API ist nicht CLS-kompatibel.

Explicit(Decimal to UInt32)

Definiert eine explizite Konvertierung einer Decimal in eine 32-Bit Ganzzahl ohne Vorzeichen.

Diese API ist nicht CLS-kompatibel.

Explicit(Decimal to UInt64)

Definiert eine explizite Konvertierung einer Decimal in eine 64-Bit Ganzzahl ohne Vorzeichen.

Diese API ist nicht CLS-kompatibel.

Explicit(Double to Decimal)

Definiert eine explizite Konvertierung einer Gleitkommazahl mit doppelter Genauigkeit in eine Decimal.

Explicit(Single to Decimal)

Definiert eine explizite Konvertierung einer Gleitkommazahl mit einfacher Genauigkeit in eine Decimal.

GreaterThan(Decimal, Decimal)

Gibt einen Wert zurück, der angibt, ob ein angegebenes Decimal größer als eine anderes angegebenes Decimal ist.

GreaterThanOrEqual(Decimal, Decimal)

Gibt einen Wert zurück, der angibt, ob ein angegebenes Decimal größer oder gleich einem anderen angegebenen Decimal ist.

Implicit(Byte to Decimal)

Definiert eine implizite Konvertierung einer 8-Bit-Ganzzahl ohne Vorzeichen in einen Decimal-Wert.

Implicit(Char to Decimal)

Definiert eine implizite Konvertierung eines Unicodezeichens in einen Decimal-Wert.

Implicit(Int16 to Decimal)

Definiert eine implizite Konvertierung einer 16-Bit-Ganzzahl mit Vorzeichen in einen Decimal-Wert.

Implicit(Int32 to Decimal)

Definiert eine implizite Konvertierung einer 32-Bit-Ganzzahl mit Vorzeichen in einen Decimal-Wert.

Implicit(Int64 to Decimal)

Definiert eine implizite Konvertierung einer 64-Bit-Ganzzahl mit Vorzeichen in einen Decimal-Wert.

Implicit(SByte to Decimal)

Definiert eine implizite Konvertierung einer 8-Bit-Ganzzahl mit Vorzeichen in einen Decimal-Wert.

Diese API ist nicht CLS-kompatibel.

Implicit(UInt16 to Decimal)

Definiert eine implizite Konvertierung einer 16-Bit-Ganzzahl ohne Vorzeichen in einen Decimal-Wert.

Diese API ist nicht CLS-kompatibel.

Implicit(UInt32 to Decimal)

Definiert eine implizite Konvertierung einer 32-Bit-Ganzzahl ohne Vorzeichen in einen Decimal-Wert.

Diese API ist nicht CLS-kompatibel.

Implicit(UInt64 to Decimal)

Definiert eine implizite Konvertierung einer 64-Bit-Ganzzahl ohne Vorzeichen in einen Decimal-Wert.

Diese API ist nicht CLS-kompatibel.

Increment(Decimal)

Erhöht den Decimal-Operanden um 1.

Inequality(Decimal, Decimal)

Gibt einen Wert zurück, der angibt, ob zwei Decimal-Objekte über unterschiedliche Werte verfügen.

LessThan(Decimal, Decimal)

Gibt einen Wert zurück, der angibt, ob ein angegebenes Decimal kleiner als ein anderes angegebenes Decimal ist.

LessThanOrEqual(Decimal, Decimal)

Gibt einen Wert zurück, der angibt, ob ein angegebenes Decimal kleiner oder gleich einem anderen angegebenen Decimal ist.

Modulus(Decimal, Decimal)

Gibt den Rest aus der Division zweier angegebener Decimal-Werte zurück.

Multiply(Decimal, Decimal)

Multipliziert zwei angegebene Decimal-Werte.

Subtraction(Decimal, Decimal)

Subtrahiert zwei angegebene Decimal-Werte.

UnaryNegation(Decimal)

Negiert den Wert des angegebenen Decimal-Operanden.

UnaryPlus(Decimal)

Gibt den Wert des Decimal-Operanden zurück (das Vorzeichen des Operanden bleibt unverändert).

Explizite Schnittstellenimplementierungen

IComparable.CompareTo(Object)

Vergleicht die aktuelle Instanz mit einem anderen Objekt vom selben Typ und gibt eine ganze Zahl zurück, die angibt, ob die aktuelle Instanz in der Sortierreihenfolge vor oder nach dem anderen Objekt oder an derselben Position auftritt.

IConvertible.GetTypeCode()

Gibt den TypeCode für diese Instanz zurück.

IConvertible.ToBoolean(IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToBoolean(IFormatProvider).

IConvertible.ToByte(IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToByte(IFormatProvider).

IConvertible.ToChar(IFormatProvider)

Diese Konvertierung wird nicht unterstützt. Bei dem Versuch der Verwendung dieser Methode wird eine InvalidCastException ausgelöst.

IConvertible.ToDateTime(IFormatProvider)

Diese Konvertierung wird nicht unterstützt. Bei dem Versuch der Verwendung dieser Methode wird eine InvalidCastException ausgelöst.

IConvertible.ToDecimal(IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToDecimal(IFormatProvider).

IConvertible.ToDouble(IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToDouble(IFormatProvider).

IConvertible.ToInt16(IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToInt16(IFormatProvider).

IConvertible.ToInt32(IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToInt32(IFormatProvider).

IConvertible.ToInt64(IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToInt64(IFormatProvider).

IConvertible.ToSByte(IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToSByte(IFormatProvider).

IConvertible.ToSingle(IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToSingle(IFormatProvider).

IConvertible.ToType(Type, IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToType(Type, IFormatProvider).

IConvertible.ToUInt16(IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToUInt16(IFormatProvider).

IConvertible.ToUInt32(IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToInt32(IFormatProvider).

IConvertible.ToUInt64(IFormatProvider)

Eine Beschreibung dieses Elements finden Sie unter ToInt64(IFormatProvider).

IDeserializationCallback.OnDeserialization(Object)

Wird ausgeführt, wenn die Deserialisierung eines Objekts abgeschlossen ist.

IFloatingPoint<Decimal>.GetExponentByteCount()

Ruft die Anzahl der Bytes ab, die als Teil von TryWriteExponentLittleEndian(Span<Byte>, Int32)geschrieben werden.

IFloatingPoint<Decimal>.GetExponentShortestBitLength()

Ruft die Länge der Komplementdarstellung des aktuellen Exponenten in Bits ab.

IFloatingPoint<Decimal>.GetSignificandBitLength()

Ruft die Länge des aktuellen Significand in Bits ab.

IFloatingPoint<Decimal>.GetSignificandByteCount()

Ruft die Anzahl der Bytes ab, die als Teil von TryWriteSignificandLittleEndian(Span<Byte>, Int32)geschrieben werden.

IFloatingPoint<Decimal>.TryWriteExponentBigEndian(Span<Byte>, Int32)

Versucht, den aktuellen Exponenten im Big-Endian-Format in eine bestimmte Spanne zu schreiben.

IFloatingPoint<Decimal>.TryWriteExponentLittleEndian(Span<Byte>, Int32)

Versucht, den aktuellen Exponenten im Little-Endian-Format in eine bestimmte Spanne zu schreiben.

IFloatingPoint<Decimal>.TryWriteSignificandBigEndian(Span<Byte>, Int32)

Versucht, die aktuelle Significand im Big-Endian-Format in eine bestimmte Spanne zu schreiben.

IFloatingPoint<Decimal>.TryWriteSignificandLittleEndian(Span<Byte>, Int32)

Versucht, die aktuelle Significand im Little-Endian-Format in eine bestimmte Spanne zu schreiben.

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Füllt eine SerializationInfo mit den Daten auf, die zum Serialisieren des Zielobjekts erforderlich sind.

Gilt für

Threadsicherheit

Alle Member dieses Typs sind threadsicher. Member, die den Instanzstatus zu ändern scheinen, geben tatsächlich eine neue Instanz zurück, die mit dem neuen Wert initialisiert wurde. Wie bei jedem anderen Typ muss das Lesen und Schreiben in eine freigegebene Variable, die eine Instanz dieses Typs enthält, durch eine Sperre geschützt werden, um die Threadsicherheit zu gewährleisten.

Siehe auch