How to Format Numeric Values

How to Format Numeric Values

At times you want to output the numeric values in specific format, for example, you may want to display monetary value with two decimal points, or scientific data with five decimal point places or an exponent. You can use NumberFormat class from java.text package for this. Here is some sample code which has been checked under JDK1.2:

 import java.text.*;public class NumberFormatter {  public static void main(String args[]) {    double d = 9876543.20;    NumberFormat  leadingZero = new DecimalFormat("00,00,000,000.00");    // This will print as 0,009,876,543.20    // See Leading Zeros    System.out.println(leadingZero.format(d));    NumberFormat noZero = new DecimalFormat("##,##,###,##0.0#");    // This will print as 9,876,543.2    // Removed leading and trailing zeroes..    System.out.println(noZero.format(d));    d = 123450000.00;    NumberFormat exponent = new DecimalFormat("####0E0");    // This will print as 1234.5E5    // In exponent form    System.out.println(exponent.format(d));    }  }

There are different Symbols you can use, some of them are:

 Symbol 	Meaning
0 a digit, (leading zero shows as zero)
# a digit, (leading zero shows as absent)
. used for decimal separator
, used for grouping separator.
E separates mantissa and exponent

For detailed API visit


Share the Post: