Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln innehåller ytterligare kommentarer till referensdokumentationen för det här API:et.
MidpointRounding Använd uppräkningen med lämpliga överlagringar av Math.Round, MathF.Roundoch Decimal.Round för att ge mer kontroll över avrundningsprocessen.
Det finns två övergripande avrundningsstrategier – avrunda till närmaste och riktad avrundning – och varje uppräkningsfält deltar i exakt en av dessa strategier.
Avrunda till närmaste heltal
Fält:
En avrunda-till-närmaste-åtgärd tar ett ursprungligt tal med en implicit eller angiven precision; den undersöker nästa siffra, som är vid den precisionen plus ett, och returnerar det närmaste talet med samma precision som det ursprungliga talet. För positiva tal, om nästa siffra är från 0 till 4, är det närmaste talet mot negativ oändlighet. Om nästa siffra är mellan 6 och 9 är det närmaste talet mot positiv oändlighet. För negativa tal, om nästa siffra är från 0 till 4, är det närmaste talet mot positiv oändlighet. Om nästa siffra är från 6 till 9 är det närmaste talet mot negativ oändlighet.
Om nästa siffra är från 0 till 4 eller 6 till 9 påverkar MidpointRounding.AwayFromZero
och MidpointRounding.ToEven
inte resultatet av avrundningsåtgärden. Men om nästa siffra är 5, vilket är mittpunkten mellan två möjliga resultat och alla återstående siffror är noll eller om det inte finns några återstående siffror, är det närmaste talet tvetydigt. I det här fallet kan lägena i MidpointRounding
för avrunda till närmaste användas för att specificera om avrundningsoperationen ska returnera det närmaste talet bort från noll eller det närmaste jämna talet.
I följande tabell visas resultatet av avrundning av vissa negativa och positiva tal i samband med avrundningsalternativ till närmaste. Precisionen som används för att avrunda talen är noll, vilket innebär att talet efter decimaltecknet påverkar avrundningsåtgärden. För talet -2,5 är siffran efter decimaltecknet till exempel 5. Eftersom den siffran är mittpunkten kan du använda ett MidpointRounding
värde för att fastställa resultatet av avrundningen. Om AwayFromZero
anges returneras -3 eftersom det är det närmaste talet bort från noll med en precision på noll. Om ToEven
anges returneras -2 eftersom det är det närmaste jämna talet med en precision på noll.
Ursprungligt tal | AwayFromZero | ToEven |
---|---|---|
3.5 | 4 | 4 |
2.8 | 3 | 3 |
2,5 | 3 | 2 |
2.1 | 2 | 2 |
-2.1 | -2 | -2 |
-2.5 | -3 | -2 |
-2.8 | -3 | -3 |
-3.5 | -4 | -4 |
Riktad avrundning
Fält:
En riktad avrundningsåtgärd tar ett ursprungligt tal med implicit eller angiven precision och returnerar nästa närmaste tal i en specifik riktning med samma precision som det ursprungliga talet. Riktade lägen på MidpointRounding
kontrollera vilket fördefinierat nummer avrundningen utförs mot.
I följande tabell visas resultatet av avrundning av vissa negativa och positiva tal beroende på riktade avrundningslägen. Precisionen som används för att avrunda talen är noll, vilket innebär att talet innan decimaltecknet påverkas av avrundningsåtgärden.
Ursprungligt tal | ToNegativeInfinity | ToPositiveInfinity | ToZero |
---|---|---|---|
3.5 | 3 | 4 | 3 |
2.8 | 2 | 3 | 2 |
2,5 | 2 | 3 | 2 |
2.1 | 2 | 3 | 2 |
-2.1 | -3 | -2 | -2 |
-2.5 | -3 | -2 | -2 |
-2.8 | -3 | -2 | -2 |
-3.5 | -4 | -3 | -3 |