devxlogo

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:

 10000.1273333-->10,000.13

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:

 $50,000.25.

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

Charlie has over a decade of experience in website administration and technology management. As the site admin, he oversees all technical aspects of running a high-traffic online platform, ensuring optimal performance, security, and user experience.

See also  How Seasoned Architects Evaluate New Tech

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.