How do I format a number?

If you want to display some numbers that is formatted to a certain pattern, either in a Java Swing application or in a JSP file, you can utilize NumberFormat and DecimalFormat class to give you the format that you want. Here is a small example that will show you how to do it.

In the code snippet below we start by creating a double variable that contains some value. By default the toString() method of the double data type will print the money value using a scientific number format as it is greater than 10^7 (10,000,000.00). To be able to display the number without scientific number format we can use java.text.DecimalFormat which is a sub class of java.text.NumberFormat.

We create a formatter using DecimalFormat class with a pattern of #0.00. The # symbol means any number but leading zero will not be displayed. The 0 symbol will display the remaining digit and will display as zero if no digit is available.

package org.kodejava.example.text;

import java.text.DecimalFormat;
import java.text.NumberFormat;

public class DecimalFormatExample {
    public static void main(String[] args) {
        // We have some millions money here that we'll format its look.
        double money = 100550000.75;

        // Creates a formatter
        NumberFormat formatter = new DecimalFormat("#0.00");

        // Print the number using scientific number format and using our 
        // defined decimal format pattern above.

Here is the different result of the code above.


Wayan Saryada

Programmer, runner, recreational diver, live in the island of Bali, Indonesia 🇮🇩. Mostly programming in Java, creating web based application with Spring Framework, Hibernate / JPA.

Leave a Reply