The way decimals are displayed varies from location to location. Example: In Germany comma is used instead of a dot to represent a decimal. To format Double in Java, we can make use of DecimalFormat.
- US: 123,456.789
- France: 123 456,789
- Germany: 123.456,789
Example 1: Using Locale
import java.text.DecimalFormat;
import java.util.Locale;
public class FormatDoubleExamples {
public static void main(String... args) {
Double doubleNumber = 40000.1234;
DecimalFormat decimalFormat = (DecimalFormat) DecimalFormat.getInstance(Locale.CANADA);
System.out.println(decimalFormat.format(doubleNumber));
decimalFormat = (DecimalFormat) DecimalFormat.getInstance(Locale.GERMANY);
System.out.println("GERMANY: "+ decimalFormat.format(doubleNumber));
decimalFormat = (DecimalFormat) DecimalFormat.getInstance(Locale.FRANCE);
System.out.println("FRANCE: "+ decimalFormat.format(doubleNumber));
decimalFormat = (DecimalFormat) DecimalFormat.getInstance(Locale.JAPAN);
System.out.println("JAPAN: "+ decimalFormat.format(doubleNumber));
}
}
Output:
CANADA: 40,000.123
GERMANY: 40.000,123
FRANCE: 40 000,123
JAPAN: 40,000.123
Example 2: Using String.format
public static void main(String... args) {
Double doubleNumber = 40000.1234;
System.out.println(String.format("%,.3f",doubleNumber));
System.out.println(String.format(Locale.GERMAN,"%,.3f",doubleNumber));
}
Output:
40,000.123
40.000,123
Example 3: Using hash (#) comma (,) and dot (.) patterns:
public static void main(String... args) {
Double myDouble = 12345.67890;
DecimalFormatSymbols germany = new DecimalFormatSymbols(Locale.GERMANY);
DecimalFormatSymbols us = new DecimalFormatSymbols(Locale.US);
DecimalFormat decimalFormat1 = new DecimalFormat("#,###.###",germany);
DecimalFormat decimalFormat2 = new DecimalFormat("#,###.###",us);
System.out.println(decimalFormat1.format(myDouble));
System.out.println(decimalFormat2.format(myDouble));
}
Output:
12.345,679
12,345.679
More Posts related to Java,
- Get the current timestamp in Java
- Java Stream with Multiple Filters Example
- Java SE JDBC with Prepared Statement Parameterized Select Example
- Fix: UnsupportedClassVersionError: Unsupported major.minor version 63.0
- [Fix] Java Exception with Lambda - Cannot invoke because object is null
- 7 deadly java.lang.OutOfMemoryError in Java Programming
- How to Calculate the SHA Hash Value of a File in Java
- Java JDBC Connection with Database using SSL (https) URL
- How to Add/Subtract Days to the Current Date in Java
- Create Nested Directories using Java Code
- Spring Boot: JDBCTemplate BatchUpdate Update Query Example
- What is CA FE BA BE 00 00 00 3D in Java Class Bytecode
- Save Java Object as JSON file using Jackson Library
- Adding Custom ASCII Text Banner in Spring Boot Application
- [Fix] Java: Type argument cannot be of primitive type generics
- List of New Features in Java 11 (JEPs)
- Java: How to Add two Maps with example
- Java JDBC Transition Management using PreparedStatement Examples
- Understanding and Handling NullPointerException in Java: Tips and Tricks for Effective Debugging
- Steps of working with Stored Procedures using JDBCTemplate Spring Boot
- Java 8 java.util.Function and BiFunction Examples
- The Motivation Behind Generics in Java Programming
- Get Current Local Date and Time using Java 8 DateTime API
- Java: Convert Char to ASCII
- Deep Dive: Why avoid java.util.Date and Calendar Classes
More Posts:
- Fix Generics: error unexpected type required: class found: type parameter - Java
- Fix: UnsupportedClassVersionError: Unsupported major.minor version 63.0 - Java
- How to add a Task List to Quick View Menu in SharePoint Online Site - SharePoint
- Install GitHub Command Line Tool on Mac - Git
- How to Write Code in Windows Notepad - Windows
- Working with Bluetooth on Mac Terminal using blueutil Commands - MacOS
- How to change Android EditText Cursor Color - Android
- Ubuntu: How to set Environment Variable - Ubuntu