Package com.ibm.icu.text
Class ScientificNumberFormatter
java.lang.Object
com.ibm.icu.text.ScientificNumberFormatter
A formatter that formats numbers in user-friendly scientific notation.
ScientificNumberFormatter instances are immutable and thread-safe.
Sample code:
ULocale en = new ULocale("en"); ScientificNumberFormatter fmt = ScientificNumberFormatter.getMarkupInstance( en, "<sup>", "</sup>");
// Output: "1.23456×10<sup>-78</sup>" System.out.println(fmt.format(1.23456e-78));
-
Method Summary
Modifier and TypeMethodDescriptionFormats a numberstatic ScientificNumberFormatter
getMarkupInstance
(DecimalFormat df, String beginMarkup, String endMarkup) Gets a ScientificNumberFormatter instance that uses markup for exponents.static ScientificNumberFormatter
getMarkupInstance
(ULocale locale, String beginMarkup, String endMarkup) Gets a ScientificNumberFormatter instance that uses markup for exponents for this locale.static ScientificNumberFormatter
Gets a ScientificNumberFormatter instance that uses superscript characters for exponents.static ScientificNumberFormatter
getSuperscriptInstance
(ULocale locale) Gets a ScientificNumberFormatter instance that uses superscript characters for exponents for this locale.
-
Method Details
-
getSuperscriptInstance
Gets a ScientificNumberFormatter instance that uses superscript characters for exponents for this locale.- Parameters:
locale
- The locale- Returns:
- The ScientificNumberFormatter instance.
-
getSuperscriptInstance
Gets a ScientificNumberFormatter instance that uses superscript characters for exponents.- Parameters:
df
- The DecimalFormat must be configured for scientific notation. Caller may safely change df after this call as this method clones it when creating the ScientificNumberFormatter.- Returns:
- the ScientificNumberFormatter instance.
-
getMarkupInstance
public static ScientificNumberFormatter getMarkupInstance(ULocale locale, String beginMarkup, String endMarkup) Gets a ScientificNumberFormatter instance that uses markup for exponents for this locale.- Parameters:
locale
- The localebeginMarkup
- the markup to start superscript e.g<sup>
endMarkup
- the markup to end superscript e.g</sup>
- Returns:
- The ScientificNumberFormatter instance.
-
getMarkupInstance
public static ScientificNumberFormatter getMarkupInstance(DecimalFormat df, String beginMarkup, String endMarkup) Gets a ScientificNumberFormatter instance that uses markup for exponents.- Parameters:
df
- The DecimalFormat must be configured for scientific notation. Caller may safely change df after this call as this method clones it when creating the ScientificNumberFormatter.beginMarkup
- the markup to start superscript e.g<sup>
endMarkup
- the markup to end superscript e.g</sup>
- Returns:
- The ScientificNumberFormatter instance.
-
format
Formats a number- Parameters:
number
- Can be a double, int, Number or anything that DecimalFormat#format(Object) accepts.- Returns:
- the formatted string.
-