Class NumberRangeFormatter

java.lang.Object
org.graalvm.shadowed.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.

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.