RoundingMode Class

Definition

Specifies a rounding policy for numerical operations capable of discarding precision.

[Android.Runtime.Register("java/math/RoundingMode", DoNotGenerateAcw=true)]
public sealed class RoundingMode : Java.Lang.Enum
[<Android.Runtime.Register("java/math/RoundingMode", DoNotGenerateAcw=true)>]
type RoundingMode = class
    inherit Enum
Inheritance
RoundingMode
Attributes

Remarks

Specifies a rounding policy for numerical operations capable of discarding precision. Each rounding mode indicates how the least significant returned digit of a rounded result is to be calculated. If fewer digits are returned than the digits needed to represent the exact numerical result, the discarded digits will be referred to as the discarded fraction regardless the digits' contribution to the value of the number. In other words, considered as a numerical value, the discarded fraction could have an absolute value greater than one.

Each rounding mode description includes a table listing how different two-digit decimal values would round to a one digit decimal value under the rounding mode in question. The result column in the tables could be gotten by creating a BigDecimal number with the specified value, forming a MathContext object with the proper settings (precision set to 1, and the roundingMode set to the rounding mode in question), and calling BigDecimal#round round on this number with the proper MathContext. A summary table showing the results of these rounding operations for all rounding modes appears below.

<table class="striped"> <caption><b>Summary of Rounding Operations Under Different Rounding Modes</b></caption> <thead> <tr><th scope="col" rowspan="2">Input Number</th><th scope="col"colspan=8>Result of rounding input to one digit with the given rounding mode</th> <tr style="vertical-align:top"> <th>UP</th> <th>DOWN</th> <th>CEILING</th> <th>FLOOR</th> <th>HALF_UP</th> <th>HALF_DOWN</th> <th>HALF_EVEN</th> <th>UNNECESSARY</th> </thead> <tbody style="text-align:right">

<tr><th scope="row">5.5</th> <td>6</td> <td>5</td> <td>6</td> <td>5</td> <td>6</td> <td>5</td> <td>6</td> <td>throw ArithmeticException</td> <tr><th scope="row">2.5</th> <td>3</td> <td>2</td> <td>3</td> <td>2</td> <td>3</td> <td>2</td> <td>2</td> <td>throw ArithmeticException</td> <tr><th scope="row">1.6</th> <td>2</td> <td>1</td> <td>2</td> <td>1</td> <td>2</td> <td>2</td> <td>2</td> <td>throw ArithmeticException</td> <tr><th scope="row">1.1</th> <td>2</td> <td>1</td> <td>2</td> <td>1</td> <td>1</td> <td>1</td> <td>1</td> <td>throw ArithmeticException</td> <tr><th scope="row">1.0</th> <td>1</td> <td>1</td> <td>1</td> <td>1</td> <td>1</td> <td>1</td> <td>1</td> <td>1</td> <tr><th scope="row">-1.0</th> <td>-1</td> <td>-1</td> <td>-1</td> <td>-1</td> <td>-1</td> <td>-1</td> <td>-1</td> <td>-1</td> <tr><th scope="row">-1.1</th> <td>-2</td> <td>-1</td> <td>-1</td> <td>-2</td> <td>-1</td> <td>-1</td> <td>-1</td> <td>throw ArithmeticException</td> <tr><th scope="row">-1.6</th> <td>-2</td> <td>-1</td> <td>-1</td> <td>-2</td> <td>-2</td> <td>-2</td> <td>-2</td> <td>throw ArithmeticException</td> <tr><th scope="row">-2.5</th> <td>-3</td> <td>-2</td> <td>-2</td> <td>-3</td> <td>-3</td> <td>-2</td> <td>-2</td> <td>throw ArithmeticException</td> <tr><th scope="row">-5.5</th> <td>-6</td> <td>-5</td> <td>-5</td> <td>-6</td> <td>-6</td> <td>-5</td> <td>-6</td> <td>throw ArithmeticException</td> </tbody> </table>

This enum is intended to replace the integer-based enumeration of rounding mode constants in BigDecimal (BigDecimal#ROUND_UP, BigDecimal#ROUND_DOWN, etc. ).

Added in 1.5.

Java documentation for java.math.RoundingMode.

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Properties

Ceiling

Rounding mode to round towards positive infinity.

Class

Returns the runtime class of this Object.

(Inherited from Object)
DeclaringClass

Returns the Class object corresponding to this enum constant's enum type.

(Inherited from Enum)
Down

Rounding mode where the values are rounded towards zero.

Floor

Rounding mode to round towards negative infinity.

HalfDown

Rounding mode where values are rounded towards the nearest neighbor.

HalfEven

Rounding mode where values are rounded towards the nearest neighbor.

HalfUp

Rounding mode where values are rounded towards the nearest neighbor.

Handle

The handle to the underlying Android instance.

(Inherited from Object)
JniIdentityHashCode (Inherited from Object)
JniPeerMembers
PeerReference (Inherited from Object)
ThresholdClass

This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

(Inherited from Enum)
ThresholdType

This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

(Inherited from Enum)
Unnecessary

Rounding mode where the rounding operations throws an ArithmeticException for the case that rounding is necessary, i.e. for the case that the value cannot be represented exactly.

Up

Rounding mode where positive values are rounded towards positive infinity and negative values towards negative infinity.

Methods

Clone()

Throws CloneNotSupportedException.

(Inherited from Enum)
CompareTo(Object)

Compares this enum with the specified object for order.

(Inherited from Enum)
Dispose() (Inherited from Object)
Dispose(Boolean) (Inherited from Object)
Equals(Object)

Returns true if the specified object is equal to this enum constant.

(Inherited from Enum)
GetHashCode()

Returns a hash code for this enum constant.

(Inherited from Enum)
JavaFinalize()

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

(Inherited from Object)
Name()

Returns the name of this enum constant, exactly as declared in its enum declaration.

(Inherited from Enum)
Notify()

Wakes up a single thread that is waiting on this object's monitor.

(Inherited from Object)
NotifyAll()

Wakes up all threads that are waiting on this object's monitor.

(Inherited from Object)
Ordinal()

Returns the ordinal of this enumeration constant (its position in its enum declaration, where the initial constant is assigned an ordinal of zero).

(Inherited from Enum)
SetHandle(IntPtr, JniHandleOwnership)

Sets the Handle property.

(Inherited from Object)
ToArray<T>() (Inherited from Object)
ToString()

Returns a string representation of the object.

(Inherited from Object)
UnregisterFromRuntime() (Inherited from Object)
ValueOf(RoundOptions)

Returns the RoundingMode object corresponding to a legacy integer rounding mode constant in BigDecimal.

ValueOf(String)

Returns the RoundingMode object corresponding to a legacy integer rounding mode constant in BigDecimal.

Values()
Wait()

Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>.

(Inherited from Object)
Wait(Int64)

Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>, or until a certain amount of real time has elapsed.

(Inherited from Object)
Wait(Int64, Int32)

Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>, or until a certain amount of real time has elapsed.

(Inherited from Object)

Explicit Interface Implementations

IJavaPeerable.Disposed() (Inherited from Object)
IJavaPeerable.DisposeUnlessReferenced() (Inherited from Object)
IJavaPeerable.Finalized() (Inherited from Object)
IJavaPeerable.JniManagedPeerState (Inherited from Object)
IJavaPeerable.SetJniIdentityHashCode(Int32) (Inherited from Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) (Inherited from Object)
IJavaPeerable.SetPeerReference(JniObjectReference) (Inherited from Object)

Extension Methods

JavaCast<TResult>(IJavaObject)

Performs an Android runtime-checked type conversion.

JavaCast<TResult>(IJavaObject)
GetJniTypeName(IJavaPeerable)

Applies to