# Print output for @column tags ?> NumberRangeFormatter - Android SDK | Android Developers

Most visited

Recently visited

NumberRangeFormatter

public abstract class NumberRangeFormatter
extends Object

java.lang.Object
   ↳ android.icu.number.NumberRangeFormatter


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:

Summary

Nested classes

enum NumberRangeFormatter.RangeCollapse

Defines how to merge fields that are identical across the range sign. 

enum NumberRangeFormatter.RangeIdentityFallback

Defines the behavior when the two numbers in the range are identical after rounding. 

enum NumberRangeFormatter.RangeIdentityResult

Used in the result class FormattedNumberRange to indicate to the user whether the numbers formatted in the range were equal or not, and whether or not the identity fallback was applied. 

Public methods

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.

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.

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.

Inherited methods

Public methods

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
UnlocalizedNumberRangeFormatter 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 Locale: The locale from which to load formats and symbols for number range formatting.

Returns
LocalizedNumberRangeFormatter 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 ULocale: The locale from which to load formats and symbols for number range formatting.

Returns
LocalizedNumberRangeFormatter A LocalizedNumberRangeFormatter, to be used for chaining.