Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Decimal.Round-Methode: (Decimal, Int32)

 

Veröffentlicht: Oktober 2016

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

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

public static decimal Round(
	decimal d,
	int decimals
)

Parameter

d
Type: System.Decimal

Eine zu rundende Dezimalzahl.

decimals
Type: System.Int32

Ein Wert zwischen 0 (null) und 28, der die Anzahl der Dezimalstellen angibt, auf die gerundet werden soll.

Rückgabewert

Type: System.Decimal

Die Dezimalzahl, die dem auf d Dezimalstellen gerundeten Wert von decimals entspricht.

Exception Condition
ArgumentOutOfRangeException

decimals ist kein Wert von 0 bis 28.

Diese Methode entspricht dem Aufrufen der Round(Decimal, Int32, MidpointRounding) Methode mit einem mode Argument MidpointRounding.ToEven. Wenn d ist genau in der Mitte zwischen zwei Werten gerundet, ist das Ergebnis der gerundete Wert, der eine gerade Zahl in die am weitesten rechts Dezimalstelle aufweist. Der Wert 2,345 wird z. B. bei einer Rundung auf zwei Dezimalziffern zu 2,34, und der Wert 2,355 wird zu 2,36. Dieser Prozess wird als bezeichnet sogar Rundung, oder Banker rounding. Es so werden Rundungsfehler reduziert, die sich aus runden Mitte liegenden Werten in nur eine Richtung ergeben.

Im folgenden Beispiel wird mehrere Decimal Werte für eine angegebene Anzahl von Dezimalstellen, die mithilfe der Round Methode.

using System;

class Example
{
   public static void Main()
   {
      // Define a set of Decimal values.
      decimal[] values = { 1.45m, 1.55m, 123.456789m, 123.456789m, 
                           123.456789m, -123.456m, 
                           new Decimal(1230000000, 0, 0, true, 7 ),
                           new Decimal(1230000000, 0, 0, true, 7 ), 
                           -9999999999.9999999999m, 
                           -9999999999.9999999999m };
      // Define a set of integers to for decimals argument.
      int[] decimals = { 1, 1, 4, 6, 8, 0, 3, 11, 9, 10};

      Console.WriteLine("{0,26}{1,8}{2,26}", 
                        "Argument", "Digits", "Result" );
      Console.WriteLine("{0,26}{1,8}{2,26}", 
                        "--------", "------", "------" );
      for (int ctr = 0; ctr < values.Length; ctr++)
        Console.WriteLine("{0,26}{1,8}{2,26}", 
                          values[ctr], decimals[ctr], 
                          Decimal.Round(values[ctr], decimals[ctr]));
    }
}
// The example displays the following output:
//                   Argument  Digits                    Result
//                   --------  ------                    ------
//                       1.45       1                       1.4
//                       1.55       1                       1.6
//                 123.456789       4                  123.4568
//                 123.456789       6                123.456789
//                 123.456789       8                123.456789
//                   -123.456       0                      -123
//               -123.0000000       3                  -123.000
//               -123.0000000      11              -123.0000000
//     -9999999999.9999999999       9    -10000000000.000000000
//     -9999999999.9999999999      10    -9999999999.9999999999

.NET Framework
Verfügbar seit 1.1
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Zurück zum Anfang
Anzeigen: