Class LocalizedNumberFormatter


public class LocalizedNumberFormatter extends NumberFormatterSettings<LocalizedNumberFormatter>
A NumberFormatter that has a locale associated with it; this means .format() methods are available. Instances of this class are immutable and thread-safe.
See Also:
  • Method Details

    • format

      public FormattedNumber format(long input)
      Format the given byte, short, int, or long to a string using the settings specified in the NumberFormatter fluent setting chain.
      Parameters:
      input - The number to format.
      Returns:
      A FormattedNumber object; call .toString() to get the string.
      See Also:
    • format

      public FormattedNumber format(double input)
      Format the given float or double to a string using the settings specified in the NumberFormatter fluent setting chain.
      Parameters:
      input - The number to format.
      Returns:
      A FormattedNumber object; call .toString() to get the string.
      See Also:
    • format

      public FormattedNumber format(Number input)
      Format the given BigInteger, BigDecimal, or other Number to a string using the settings specified in the NumberFormatter fluent setting chain.
      Parameters:
      input - The number to format.
      Returns:
      A FormattedNumber object; call .toString() to get the string.
      See Also:
    • format

      public FormattedNumber format(Measure input)
      Format the given Measure or CurrencyAmount to a string using the settings specified in the NumberFormatter fluent setting chain.

      The unit specified here overrides any unit that may have been specified in the setter chain. This method is intended for cases when each input to the number formatter has a different unit.

      Parameters:
      input - The number to format.
      Returns:
      A FormattedNumber object; call .toString() to get the string.
      See Also:
    • toFormat

      public Format toFormat()
      Creates a representation of this LocalizedNumberFormat as a Format, enabling the use of this number formatter with APIs that need an object of that type, such as MessageFormat.

      This API is not intended to be used other than for enabling API compatibility. The format(long) methods should normally be used when formatting numbers, not the Format object returned by this method.

      Returns:
      A Format wrapping this LocalizedNumberFormatter.
      See Also:
    • formatImpl

      @Deprecated public com.ibm.icu.impl.number.MicroProps formatImpl(com.ibm.icu.impl.number.DecimalQuantity fq, com.ibm.icu.impl.FormattedStringBuilder string)
      Deprecated.
      ICU 60 This API is ICU internal only.
      This is the core entrypoint to the number formatting pipeline. It performs self-regulation: a static code path for the first few calls, and compiling a more efficient data structure if called repeatedly.

      This function is very hot, being called in every call to the number formatting pipeline.

      Parameters:
      fq - The quantity to be formatted.
      string - The string builder into which to insert the result.
    • formatImpl

      @Deprecated public com.ibm.icu.impl.number.MicroProps formatImpl(com.ibm.icu.impl.number.DecimalQuantity fq, MeasureUnit unit, com.ibm.icu.impl.FormattedStringBuilder string)
      Deprecated.
      ICU 67 This API is ICU internal only.
      Version of above for unit override.
    • getAffixImpl

      @Deprecated public String getAffixImpl(boolean isPrefix, boolean isNegative)
      Deprecated.
      This API is ICU internal only. Use FormattedNumber.nextPosition(com.ibm.icu.text.ConstrainedFieldPosition) for related functionality.