ICU 71.1
71.1

A class that defines the notation style to be used when formatting numbers in NumberFormatter. More...
#include <numberformatter.h>
Static Public Member Functions  
static ScientificNotation  scientific () 
Print the number using scientific notation (also known as scientific form, standard index form, or standard form in the UK). More...  
static ScientificNotation  engineering () 
Print the number using engineering notation, a variant of scientific notation in which the exponent must be divisible by 3. More...  
static CompactNotation  compactShort () 
Print the number using shortform compact notation. More...  
static CompactNotation  compactLong () 
Print the number using longform compact notation. More...  
static SimpleNotation  simple () 
Print the number using simple notation without any scaling by powers of ten. More...  
Friends  
struct  impl::MacroProps 
class  ScientificNotation 
class  impl::NumberFormatterImpl 
class  impl::ScientificModifier 
class  impl::ScientificHandler 
class  impl::GeneratorHelpers 
A class that defines the notation style to be used when formatting numbers in NumberFormatter.
Definition at line 198 of file numberformatter.h.

static 
Print the number using longform compact notation.
For more information on compact notation, see compactShort.
In long form, the powers of ten are spelled out fully. Example outputs in enUS when printing 8.765E7 through 8.765E0:
88 million 8.8 million 876 thousand 88 thousand 8.8 thousand 876 88 8.8

static 
Print the number using shortform compact notation.
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 enUS, the abbreviations are "K" for thousands, "M" for millions, "B" for billions, and "T" for trillions. Example outputs in enUS 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 precision, 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 precision is equivalent to:
Precision::integer().withMinDigits(2)

static 
Print the number using engineering notation, a variant of scientific notation in which the exponent must be divisible by 3.
Example outputs in enUS when printing 8.765E4 through 8.765E3:
87.65E3 8.765E3 876.5E0 87.65E0 8.765E0 876.5E3 87.65E3 8.765E3 0E0

static 
Print the number using scientific notation (also known as scientific form, standard index form, or standard form in the UK).
The format for scientific notation varies by locale; for example, many Western locales display the number in the form "#E0", where the number is displayed with one digit before the decimal separator, zero or more digits after the decimal separator, and the corresponding power of 10 displayed after the "E".
Example outputs in enUS when printing 8.765E4 through 8.765E3:
8.765E4 8.765E3 8.765E2 8.765E1 8.765E0 8.765E1 8.765E2 8.765E3 0E0

static 
Print the number using simple notation without any scaling by powers of ten.
This is the default behavior.
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 enUS 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