Klasa RoundingMode
Klasa java.math.RoundingMode
RoundingMode
jest wyliczeniem. To klasa pomocnicza dla klasy MathContext
oraz klasy BigDecimal
.
RoundingMode.UP
Zaokrągla w stronę ‘od 0’ albo ‘w górę każdej osi’.
RoundingMode.DOWN
Zaokrągla w kierunku ‘do 0’.
RoundingMode.CEILING
Zaokrągla ‘w prawą stronę osi’.
RoundingMode.FLOOR
Zaokrągla ‘w lewą stronę osi’.
RoundingMode.HALF_UP
Zaokrągla ‘w kierunku najbliższego sąsiada’. Jeśli sąsiedzi w obie strony są w takiej samej odległości (-5.5 oraz -5.6 są w takiej samej odległości od -5.55) wtedy zaokrągla w górę.
RoundingMode.HALF_DOWN
Zaokrągla ‘w kierunku najbliższego sąsiada’. Jeśli sąsiedzi w obie strony są w takiej samej odległości (-5.5 oraz -5.6 są w takiej samej odległości od -5.55) wtedy zaokrągla w dół.
RoundingMode.HALF_EVEN
Zaokrągla ‘w kierunku najbliższego sąsiada’. Jeśli sąsiedzi w obie strony są w takiej samej odległości (-5.5 oraz -5.6 są w takiej samej odległości od -5.55) zachowuje tę w środku odległości. Jeśli liczba przed liczbą usuwaną jest nieparzysta działa tak jak HALF_DOWN. Ten tryb zaokrąglania minimalizuje kumulowanie błędów w przypadku wykonywania serii obliczeń z zaokrąglaniem. Jest stosowane w Javie przy zaokrąglaniu double i float. Jest powszechnie stosowany w księgowości i w bankach.
RoundingMode.UNNECESSARY
Ustawia się, aby zasygnalizować, że wynik jest dokładny i zaokrąglenie nie jest konieczne. Jeśli jednak okaże się, że wynik nie jest dokładny i potrzebne jest zaokrąglenie wyrzuci ArithmeticException
.
Wszystkie powyższe operacje wyrzucą wyjątek.