Formatting Currency in Java
Edwin Torres

Edwin Torres @realedwintorres

About: Department Chief Engineer @MITREcorp. CS professor @monmouthu. Proud husband and father ❤️. My tweets are my own.

Location:
NJ
Joined:
Mar 17, 2018

Formatting Currency in Java

Publish Date: Oct 30 '21
1 0

An easy way to output currency in Java is to use the built-in NumberFormat class. This lets you format a number like 1000.2399 for output as $1,000.24.

NumberFormat rounds to two decimals, adds necessary commas, and includes a $ in front.

To use NumberFormat, import the class at the top of your program:

import java.text.NumberFormat;
Enter fullscreen mode Exit fullscreen mode

Next, create the NumberFormat object and assign it to a variable formatter:

NumberFormat formatter = NumberFormat.getCurrencyInstance();
Enter fullscreen mode Exit fullscreen mode

Finally, use the formatter object to invoke the format() method on the amount to be formatted:

double amt = 1000.2399;
String amtFormatted = formatter.format(amt);
Enter fullscreen mode Exit fullscreen mode

Note that the result is a String value.

Here is a full program example:

import java.text.NumberFormat;

public class NumberFormatExample {
  public static void main(String[] args) {
    NumberFormat formatter = NumberFormat.getCurrencyInstance();

    double amt = 1000.2399;
    String amtFormatted = formatter.format(amt);

    System.out.println("original:    " + amt);
    System.out.println("formatted:   " + amtFormatted);
  }
}
Enter fullscreen mode Exit fullscreen mode

Here is the output:

original:    1000.2399
formatted:   $1,000.24
Enter fullscreen mode Exit fullscreen mode

Follow me on Twitter @realEdwinTorres for more programming tips and help.

Comments 0 total

    Add comment