Package com.ibm.icu.number
Class NumberRangeFormatter
java.lang.Object
com.ibm.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.
- Author:
- sffc
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
Defines how to merge fields that are identical across the range sign.static enum
Defines the behavior when the two numbers in the range are identical after rounding.static enum
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.static final class
Class for span fields in FormattedNumberRange. -
Method Summary
Modifier and TypeMethodDescriptionwith()
Call this method at the beginning of a NumberRangeFormatter fluent chain in which the locale is not currently known at the call site.withLocale
(ULocale locale) Call this method at the beginning of a NumberRangeFormatter fluent chain in which the locale is known at the call site.withLocale
(Locale locale) Call this method at the beginning of a NumberRangeFormatter fluent chain in which the locale is known at the call site.
-
Method Details
-
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
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
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.
-