Package com.ibm.icu.number
Class FormattedNumber
- java.lang.Object
-
- com.ibm.icu.number.FormattedNumber
-
- All Implemented Interfaces:
FormattedValue,java.lang.CharSequence
public class FormattedNumber extends java.lang.Object implements FormattedValue
The result of a number formatting operation. This class allows the result to be exported in several data types, including a String, an AttributedCharacterIterator, and a BigDecimal. Instances of this class are immutable and thread-safe.- See Also:
NumberFormatter
-
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description <A extends java.lang.Appendable>
AappendTo(A appendable)Appends the formatted string to an Appendable.charcharAt(int index)PluralRules.IFixedDecimalgetFixedDecimal()Deprecated.This API is ICU internal only.java.lang.StringgetGender()Deprecated.This API is for technology preview only.MeasureUnitgetOutputUnit()Gets the resolved output unit.intlength()booleannextPosition(ConstrainedFieldPosition cfpos)Iterates over field positions in the FormattedValue.java.lang.CharSequencesubSequence(int start, int end)java.math.BigDecimaltoBigDecimal()Export the formatted number as a BigDecimal.java.text.AttributedCharacterIteratortoCharacterIterator()Exports the formatted number as an AttributedCharacterIterator.java.lang.StringtoString()Returns the formatted string as a Java String.
-
-
-
Method Detail
-
toString
public java.lang.String toString()
Returns the formatted string as a Java String. Consider usingFormattedValue.appendTo(A)for greater efficiency.- Specified by:
toStringin interfacejava.lang.CharSequence- Specified by:
toStringin interfaceFormattedValue- Overrides:
toStringin classjava.lang.Object- Returns:
- The formatted string.
-
length
public int length()
- Specified by:
lengthin interfacejava.lang.CharSequence
-
charAt
public char charAt(int index)
- Specified by:
charAtin interfacejava.lang.CharSequence
-
subSequence
public java.lang.CharSequence subSequence(int start, int end)- Specified by:
subSequencein interfacejava.lang.CharSequence
-
appendTo
public <A extends java.lang.Appendable> A appendTo(A appendable)
Appends the formatted string to an Appendable.If an IOException occurs when appending to the Appendable, an unchecked
ICUUncheckedIOExceptionis thrown instead.- Specified by:
appendToin interfaceFormattedValue- Parameters:
appendable- The Appendable to which to append the string output.- Returns:
- The same Appendable, for chaining.
-
nextPosition
public boolean nextPosition(ConstrainedFieldPosition cfpos)
Iterates over field positions in the FormattedValue. This lets you determine the position of specific types of substrings, like a month or a decimal separator. To loop over all field positions:ConstrainableFieldPosition cfpos = new ConstrainableFieldPosition(); while (fmtval.nextPosition(cfpos)) { // handle the field position; get information from cfpos }- Specified by:
nextPositionin interfaceFormattedValue- Parameters:
cfpos- The object used for iteration state. This can provide constraints to iterate over only one specific field; seeConstrainedFieldPosition.constrainField(java.text.Format.Field).- Returns:
- true if a new occurrence of the field was found; false otherwise.
-
toCharacterIterator
public java.text.AttributedCharacterIterator toCharacterIterator()
Exports the formatted number as an AttributedCharacterIterator.Consider using
FormattedValue.nextPosition(com.ibm.icu.text.ConstrainedFieldPosition)if you are trying to get field information.- Specified by:
toCharacterIteratorin interfaceFormattedValue- Returns:
- An AttributedCharacterIterator containing full field information.
-
toBigDecimal
public java.math.BigDecimal toBigDecimal()
Export the formatted number as a BigDecimal. This endpoint is useful for obtaining the exact number being printed after scaling and rounding have been applied by the number formatting pipeline.- Returns:
- A BigDecimal representation of the formatted number.
- See Also:
NumberFormatter
-
getOutputUnit
public MeasureUnit getOutputUnit()
Gets the resolved output unit.The output unit is dependent upon the localized preferences for the usage specified via NumberFormatterSettings.usage(), and may be a unit with MeasureUnit.Complexity.MIXED unit complexity (MeasureUnit.getComplexity()), such as "foot-and-inch" or "hour-and-minute-and-second".
- Returns:
- `MeasureUnit`.
-
getGender
@Deprecated public java.lang.String getGender()
Deprecated.This API is for technology preview only.The gender of the formatted output.
-
getFixedDecimal
@Deprecated public PluralRules.IFixedDecimal getFixedDecimal()
Deprecated.This API is ICU internal only.
-
-