MidpointRounding Výčet

Definice

Určuje strategii, kterou by matematické metody zaokrouhlování měly použít k zaokrouhlení čísla.

C#
public enum MidpointRounding
C#
[System.Runtime.InteropServices.ComVisible(true)]
public enum MidpointRounding
Dědičnost
MidpointRounding
Atributy

Pole

AwayFromZero 1

Strategie zaokrouhlování na nejbližší číslo a když je číslo v polovině mezi dvěma dalšími, zaokrouhlí se směrem k nejbližšímu číslu, které je od nuly.

ToEven 0

Strategie zaokrouhlování na nejbližší číslo a když je číslo v polovině mezi dvěma dalšími, zaokrouhlí se směrem k nejbližšímu sudé číslu.

ToNegativeInfinity 3

Strategie zaokrouhlení směrem dolů s výsledkem, který je nejblíže a není větší než nekonečně přesný výsledek.

ToPositiveInfinity 4

Strategie zaokrouhlení směrem nahoru s výsledkem, který je nejblíže a ne menší než nekonečně přesný výsledek.

ToZero 2

Strategie řízeného zaokrouhlení směrem k nule, přičemž výsledek je nejblíže a není větší než nekonečně přesný výsledek.

Příklady

Následující příklad ukazuje metodu Math.Round ve spojení s výčtem MidpointRounding :

C#
decimal result;

// Round a positive value using different strategies.
// The precision of the result is 1 decimal place.

result = Math.Round(3.45m, 1, MidpointRounding.ToEven);
Console.WriteLine($"{result} = Math.Round({3.45m}, 1, MidpointRounding.ToEven)");
result = Math.Round(3.45m, 1, MidpointRounding.AwayFromZero);
Console.WriteLine($"{result} = Math.Round({3.45m}, 1, MidpointRounding.AwayFromZero)");
result = Math.Round(3.47m, 1, MidpointRounding.ToZero);
Console.WriteLine($"{result} = Math.Round({3.47m}, 1, MidpointRounding.ToZero)\n");

// Round a negative value using different strategies.
// The precision of the result is 1 decimal place.

result = Math.Round(-3.45m, 1, MidpointRounding.ToEven);
Console.WriteLine($"{result} = Math.Round({-3.45m}, 1, MidpointRounding.ToEven)");
result = Math.Round(-3.45m, 1, MidpointRounding.AwayFromZero);
Console.WriteLine($"{result} = Math.Round({-3.45m}, 1, MidpointRounding.AwayFromZero)");
result = Math.Round(-3.47m, 1, MidpointRounding.ToZero);
Console.WriteLine($"{result} = Math.Round({-3.47m}, 1, MidpointRounding.ToZero)\n");

/*
This code example produces the following results:

3.4 = Math.Round(3.45, 1, MidpointRounding.ToEven)
3.5 = Math.Round(3.45, 1, MidpointRounding.AwayFromZero)
3.4 = Math.Round(3.47, 1, MidpointRounding.ToZero)

-3.4 = Math.Round(-3.45, 1, MidpointRounding.ToEven)
-3.5 = Math.Round(-3.45, 1, MidpointRounding.AwayFromZero)
-3.4 = Math.Round(-3.47, 1, MidpointRounding.ToZero)
*/

Poznámky

Další informace o tomto rozhraní API najdete v tématu Doplňkové poznámky k rozhraní API pro MidpointRounding.

Platí pro

Produkt Verze
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0