Outputting Currencies

Outputting Currencies

How to print out a Currency in Java is an often overlooked topic. How should Currency be printed out in an international, standardized way?

The java.text.NumberFormat class is used for outputting numbers. It handles decimal points and inserting commas. For example:


It also handles internationalization. Many locales use a space or a dot to separate the thousands and a comma to separate the decimals. For example in Hungary, the above would be:

 10000.1273333 --> 10 000,13.

However, the NumberFormat class can do more. It has a Currency instance that knows what symbols to use when outputting a currency and how to format the number. For example, 50000.25 in the United States would be:


In Hungary, it would be:

 Ft50 000,250.

The easiest way to print a value is to use the default Locale:

 Locale loc = Locale.getDefault();NumberFormat nf = NumberFormat.getCurrencyInstance(loc);System.out.println(nf.format(50444.423));

Also, you can easily print out all the Currency formats in the available Locales:

 import java.text.NumberFormat;import java.util.Locale;public class Currency {static public void main(String[] strs) {Locale[] locs = NumberFormat.getAvailableLocales();for(int i=0; i
See also  Why ChatGPT Is So Important Today

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist