NumberFormat is an abstract base class for all number formats. This class provides the interface for formatting and parsing numbers. NumberFormat also provides methods for determining which locales (US, India, Italy, etc) have number formats, and what their names are. NumberFormat helps you to format and parse numbers for any locale.
Example: Suppose we have a double type number. But this double type number is represented in different ways in different Countries. To represent a number according to various countries we have to take the help of NumberFormat class like:
double d = 123456.789; For India, it is represented like 1,23,456.789 For US, it is represented like 123,456.789 For ITALY, it is represented like 123.456,789
Some important points about NumberFormat class:
- NumberFormat class is present in java.text package and it is an abstract class.
- NumberFormat class implements Serializable, Cloneable.
- NumberFormat is the direct child class of Format class.
- Number formats are generally not synchronized. It is recommended to create separate format instances for each thread. If multiple threads access a format concurrently, it must be synchronized externally.
Methods present in NumberFormat class:
- public static NumberFormat getInstance();: To get the NumberFormat object for default Locale.
- public static NumberFormat getCurrencyInstance();: To get the NumberFormat object for default Locale to represent in specific Currency.
- public static NumberFormat getPercentInstance();:
- public static NumberFormat getInstance(Locale l);: To get the NumberFormat object for the specified Locale object.
- public static format(long l);:To convert java number to locale object.
ITALY representation of 123456.789 : 123.456, 789
Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready.