| Modifier and Type | Field and Description |
|---|---|
| public static final MathContext | DEFAULT_MATH_CONTEXT_34_DIGITS
The default MathContext, 34-digit version. |
| public static final MathContext | DEFAULT_MATH_CONTEXT_UNLIMITED
The default MathContext, unlimited-precision version. |
| public static final RoundingMode | DEFAULT_ROUNDING_MODE
The default rounding mode. |
| private static final MathContext[] | |
| private static final MathContext[] | |
| public static final int | MAX_INT_FRAC_SIG
The maximum number of fraction places, integer numerals, or significant digits. |
| public static final int | |
| public static final int | |
| public static final int |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public static MathContext | Returns: AMathContext. Never null.The property bag. properties)Gets the user-specified math context out of the property bag. |
| public static MathContext | Returns: AMathContext. Never null.The property bag. properties)Gets the user-specified math context out of the property bag. |
| public static StandardPlural | getPluralSafe(Precision rounder, PluralRules rules, DecimalQuantity dq)
Deprecated
as a consequence of
Computes the plural form after copying the number and applying rounding rules.
DecimalQuantity being deprecated.
|
| public static boolean | Returns: true if the number should be rounded toward zero; false if it should be rounded toward infinity.Whether the digit immediately before the rounding magnitude is even. isEven, boolean Whether the quantity is negative. isNegative, int Whether the part of the quantity to the right of the rounding magnitude is exactly
halfway between two digits, whether it is in the lower part (closer to zero), or
whether it is in the upper part (closer to infinity). See section, int SECTION_LOWER,
SECTION_MIDPOINT, and SECTION_UPPER.The integer version of the roundingMode, Object RoundingMode, which you can get via
RoundingMode#ordinal.A reference object to be used when throwing an ArithmeticException. reference)Converts a rounding mode and metadata about the quantity being rounded to a boolean determining whether the value should be rounded toward infinity or toward zero. |
| public static MathContext | Returns: The correspondingMathContext.The roundingMode)RoundingMode to use.Gets a MathContext with unlimited precision and the specified RoundingMode. |
| public static boolean | Returns: true if rounding mode is HALF_EVEN, HALF_UP, or HALF_DOWN; false otherwise.The integer version of the roundingMode)RoundingMode.Gets whether the given rounding mode's rounding boundary is at the midpoint. |
| public static Scale |
| DEFAULT_MATH_CONTEXT_34_DIGITS | back to summary |
|---|---|
| public static final MathContext DEFAULT_MATH_CONTEXT_34_DIGITS The default MathContext, 34-digit version. | |
| DEFAULT_MATH_CONTEXT_UNLIMITED | back to summary |
|---|---|
| public static final MathContext DEFAULT_MATH_CONTEXT_UNLIMITED The default MathContext, unlimited-precision version. | |
| DEFAULT_ROUNDING_MODE | back to summary |
|---|---|
| public static final RoundingMode DEFAULT_ROUNDING_MODE The default rounding mode. | |
| MATH_CONTEXT_BY_ROUNDING_MODE_34_DIGITS | back to summary |
|---|---|
| private static final MathContext[] MATH_CONTEXT_BY_ROUNDING_MODE_34_DIGITS | |
| MATH_CONTEXT_BY_ROUNDING_MODE_UNLIMITED | back to summary |
|---|---|
| private static final MathContext[] MATH_CONTEXT_BY_ROUNDING_MODE_UNLIMITED | |
| MAX_INT_FRAC_SIG | back to summary |
|---|---|
| public static final int MAX_INT_FRAC_SIG The maximum number of fraction places, integer numerals, or significant digits. Todo This does not feel like the best home for this value. | |
| SECTION_LOWER | back to summary |
|---|---|
| public static final int SECTION_LOWER | |
| SECTION_MIDPOINT | back to summary |
|---|---|
| public static final int SECTION_MIDPOINT | |
| SECTION_UPPER | back to summary |
|---|---|
| public static final int SECTION_UPPER | |
| RoundingUtils | back to summary |
|---|---|
| public RoundingUtils() | |
| getMathContextOr34Digits | back to summary |
|---|---|
| public static MathContext getMathContextOr34Digits(DecimalFormatProperties properties) Gets the user-specified math context out of the property bag. If there is none, falls back to a math context with 34 digits of precision (the 128-bit IEEE 754R default) and the user-specified rounding mode, which defaults to HALF_EVEN (the IEEE 754R default).
| |
| getMathContextOrUnlimited | back to summary |
|---|---|
| public static MathContext getMathContextOrUnlimited(DecimalFormatProperties properties) Gets the user-specified math context out of the property bag. If there is none, falls back to a math context with unlimited precision and the user-specified rounding mode, which defaults to HALF_EVEN (the IEEE 754R default).
| |
| getPluralSafe | back to summary |
|---|---|
| public static StandardPlural getPluralSafe(Precision rounder, PluralRules rules, DecimalQuantity dq)
Deprecated as a consequence of Computes the plural form after copying the number and applying rounding rules. | |
| getRoundingDirection | back to summary |
|---|---|
| public static boolean getRoundingDirection(boolean isEven, boolean isNegative, int section, int roundingMode, Object reference) Converts a rounding mode and metadata about the quantity being rounded to a boolean determining whether the value should be rounded toward infinity or toward zero. The parameters are of type int because benchmarks on an x86-64 processor against OpenJDK showed that ints were demonstrably faster than enums in switch statements.
| |
| mathContextUnlimited | back to summary |
|---|---|
| public static MathContext mathContextUnlimited(RoundingMode roundingMode) Gets a MathContext with unlimited precision and the specified RoundingMode. Equivalent to "new MathContext(0, roundingMode)", but pulls from a singleton to prevent object thrashing.
| |
| roundsAtMidpoint | back to summary |
|---|---|
| public static boolean roundsAtMidpoint(int roundingMode) Gets whether the given rounding mode's rounding boundary is at the midpoint. The rounding boundary is the point at which a number switches from being rounded down to being rounded up. For example, with rounding mode HALF_EVEN, HALF_UP, or HALF_DOWN, the rounding boundary is at the midpoint, and this function would return true. However, for UP, DOWN, CEILING, and FLOOR, the rounding boundary is at the "edge", and this function would return false.
| |
| scaleFromProperties | back to summary |
|---|---|
| public static Scale scaleFromProperties(DecimalFormatProperties properties) | |