Enum NumberFormatter.RoundingPriority
- java.lang.Object
-
- java.lang.Enum<NumberFormatter.RoundingPriority>
-
- com.ibm.icu.number.NumberFormatter.RoundingPriority
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Comparable<NumberFormatter.RoundingPriority>
- Enclosing class:
- NumberFormatter
public static enum NumberFormatter.RoundingPriority extends java.lang.Enum<NumberFormatter.RoundingPriority>
An enum declaring how to resolve conflicts between maximum fraction digits and maximum significant digits.There are two modes, RELAXED and STRICT:
- RELAXED: Relax one of the two constraints (fraction digits or significant digits) in order to round the number to a higher level of precision.
- STRICT: Enforce both constraints, resulting in the number being rounded to a lower level of precision.
The default settings for compact notation rounding are Max-Fraction = 0 (round to the nearest integer), Max-Significant = 2 (round to 2 significant digits), and priority RELAXED (choose the constraint that results in more digits being displayed).
Conflicting minimum fraction and significant digits are always resolved in the direction that results in more trailing zeros.
Example 1: Consider the number 3.141, with various different settings:
- Max-Fraction = 1: "3.1"
- Max-Significant = 3: "3.14"
The rounding priority determines how to resolve the conflict when both Max-Fraction and Max-Significant are set. With RELAXED, the less-strict setting (the one that causes more digits to be displayed) will be used; Max-Significant wins. With STRICT, the more-strict setting (the one that causes fewer digits to be displayed) will be used; Max-Fraction wins.
Example 2: Consider the number 8317, with various different settings:
- Max-Fraction = 1: "8317"
- Max-Significant = 3: "8320"
Here, RELAXED favors Max-Fraction and STRICT favors Max-Significant. Note that this larger number caused the two modes to favor the opposite result.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static NumberFormatter.RoundingPriority
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.static NumberFormatter.RoundingPriority[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
RELAXED
public static final NumberFormatter.RoundingPriority RELAXED
Favor greater precision by relaxing one of the rounding constraints.
-
STRICT
public static final NumberFormatter.RoundingPriority STRICT
Favor adherence to all rounding constraints by producing lower precision.
-
-
Method Detail
-
values
public static NumberFormatter.RoundingPriority[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (NumberFormatter.RoundingPriority c : NumberFormatter.RoundingPriority.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static NumberFormatter.RoundingPriority valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
java.lang.IllegalArgumentException
- if this enum type has no constant with the specified namejava.lang.NullPointerException
- if the argument is null
-
-