Class NumberRangeFormatter

java.lang.Object
com.ibm.icu.number.NumberRangeFormatter

public abstract class NumberRangeFormatter extends Object
The main entrypoint to the formatting of ranges of numbers, including currencies and other units of measurement.

Usage example:

 NumberRangeFormatter.with()
         .identityFallback(RangeIdentityFallback.APPROXIMATELY_OR_SINGLE_VALUE)
         .numberFormatterFirst(NumberFormatter.with().unit(MeasureUnit.METER))
         .numberFormatterSecond(NumberFormatter.with().unit(MeasureUnit.KILOMETER))
         .locale(ULocale.UK)
         .formatRange(750, 1.2)
         .toString();
 // → "750 m - 1.2 km"
 

Like NumberFormatter, NumberRangeFormatter instances (i.e., LocalizedNumberRangeFormatter and UnlocalizedNumberRangeFormatter) are immutable and thread-safe. This API is based on the fluent design pattern popularized by libraries such as Google's Guava.

Author:
sffc
See Also:
  • Method Details

    • with

      public static UnlocalizedNumberRangeFormatter with()
      Call this method at the beginning of a NumberRangeFormatter fluent chain in which the locale is not currently known at the call site.
      Returns:
      An UnlocalizedNumberRangeFormatter, to be used for chaining.
    • withLocale

      public static LocalizedNumberRangeFormatter withLocale(Locale locale)
      Call this method at the beginning of a NumberRangeFormatter fluent chain in which the locale is known at the call site.
      Parameters:
      locale - The locale from which to load formats and symbols for number range formatting.
      Returns:
      A LocalizedNumberRangeFormatter, to be used for chaining.
    • withLocale

      public static LocalizedNumberRangeFormatter withLocale(ULocale locale)
      Call this method at the beginning of a NumberRangeFormatter fluent chain in which the locale is known at the call site.
      Parameters:
      locale - The locale from which to load formats and symbols for number range formatting.
      Returns:
      A LocalizedNumberRangeFormatter, to be used for chaining.