public class Notation extends Object
NumberFormatter
Modifier and Type | Method and Description |
---|---|
static CompactNotation |
compactLong()
Print the number using long-form compact notation.
|
static CompactNotation |
compactShort()
Print the number using short-form compact notation.
|
static ScientificNotation |
engineering()
Print the number using engineering notation, a variant of scientific notation in which the
exponent must be divisible by 3.
|
static ScientificNotation |
scientific()
Print the number using scientific notation (also known as scientific form, standard index form, or
standard form in the UK).
|
static SimpleNotation |
simple()
Print the number using simple notation without any scaling by powers of ten.
|
public static ScientificNotation scientific()
Example outputs in en-US when printing 8.765E4 through 8.765E-3:
8.765E4 8.765E3 8.765E2 8.765E1 8.765E0 8.765E-1 8.765E-2 8.765E-3 0E0
NumberFormatter
public static ScientificNotation engineering()
Example outputs in en-US when printing 8.765E4 through 8.765E-3:
87.65E3 8.765E3 876.5E0 87.65E0 8.765E0 876.5E-3 87.65E-3 8.765E-3 0E0
NumberFormatter
public static CompactNotation compactShort()
Compact notation, defined in Unicode Technical Standard #35 Part 3 Section 2.4.1, prints numbers with localized prefixes or suffixes corresponding to different powers of ten. Compact notation is similar to engineering notation in how it scales numbers.
Compact notation is ideal for displaying large numbers (over ~1000) to humans while at the same time minimizing screen real estate.
In short form, the powers of ten are abbreviated. In en-US, the abbreviations are "K" for thousands, "M" for millions, "B" for billions, and "T" for trillions. Example outputs in en-US when printing 8.765E7 through 8.765E0:
88M 8.8M 876K 88K 8.8K 876 88 8.8
When compact notation is specified without an explicit rounding strategy, numbers are rounded off to the closest integer after scaling the number by the corresponding power of 10, but with a digit shown after the decimal separator if there is only one digit before the decimal separator. The default compact notation rounding strategy is equivalent to:
Rounder.integer().withMinDigits(2)
NumberFormatter
public static CompactNotation compactLong()
compactShort()
.
In long form, the powers of ten are spelled out fully. Example outputs in en-US when printing 8.765E7 through 8.765E0:
88 million 8.8 million 876 thousand 88 thousand 8.8 thousand 876 88 8.8
NumberFormatter
public static SimpleNotation simple()
Since this is the default behavior, this method needs to be called only when it is necessary to override a previous setting.
Example outputs in en-US when printing 8.765E7 through 8.765E0:
87,650,000 8,765,000 876,500 87,650 8,765 876.5 87.65 8.765
NumberFormatter
Copyright © 2016 Unicode, Inc. and others.