Best way to Format a Double value to 2 Decimal places

java

Solution

No, there is no better way.

Actually you have an error in your pattern. What you want is:

DecimalFormat df = new DecimalFormat("#.00"); 

Note the `"00"`, meaning exactly two decimal places.

If you use `"#.##"` (`#` means "optional" digit), it will drop trailing zeroes - ie `new DecimalFormat("#.##").format(3.0d);` prints just `"3"`, not `"3.00"`.

Problem

I am dealing with lot of double values in my application, is there is any easy way to handle the formatting of decimal values in Java? Is there any other better way of doing it than ``` DecimalFormat df = new DecimalFormat("#.##"); ``` What i want to do basically is format double values like ``` 23.59004 to 23.59 35.7 to 35.70 3.0 to 3.00 9 to 9.00 ```

Original source

Related problems