This week's book giveaway is in the Design forum.We're giving away four copies of Design for the Mind and have Victor S. Yocco on-line!See this thread for details.
Win a copy of Design for the Mind this week in the Design forum!

# DecimalFormat drops the 0s after decimal point. I need to keep them.

Sri Kor
Ranch Hand
Posts: 35
Hi,

I have to show the number as is without dropping the end 0s after decimal.

e.g. I need to show 12 as 12, 13.0 as 13.0 14.50 as 14.50. But the decimal format removes the last zero.

Unfortunately, JFreeChart tooltip logic requires a decimal format to be specified to do anything like this.

Any idea how we can achieve this.

Henry Wong
author
Marshal
Posts: 20995
76
What do you mean by "I need to keep them"? Are you using DecimalFormat to parse a double from a string? And is now wondering why when you print the double, the format of the double is gone?

If you are... A double is a value. It contains no formatting what-so-ever. So, there is no such a thing as "keep them" -- any formatting is lost when the string is converted to a double.

Henry

Mike Simmons
Ranch Hand
Posts: 3036
10
How are you specifying the DecimalFormat now? Have you looked at the API for DecimalFormat? If it's something like

Sri Kor
Ranch Hand
Posts: 35
Mike Simmons wrote:How are you specifying the DecimalFormat now? Have you looked at the API for DecimalFormat? If it's something like

I can't use formatting like this. Because, if I have a number like 29 I have to show it as 29 in the JFreeChart. If I use a format like the above, it will change the number 29 to 29.00.

Sri Kor
Ranch Hand
Posts: 35
Henry Wong wrote:What do you mean by "I need to keep them"? Are you using DecimalFormat to parse a double from a string? And is now wondering why when you print the double, the format of the double is gone?

If you are... A double is a value. It contains no formatting what-so-ever. So, there is no such a thing as "keep them" -- any formatting is lost when the string is converted to a double.

Henry

By default a number like 12.20 is shown as 12.2. But, I need to show it as 12.20. If the number is 12.220, I need to show 12.220. But, JFreeChart which uses decimal format drops 0 at the end.

Rob Spoor
Sheriff
Posts: 20511
54
You could consider using BigDecimal. If you create that using "12.220" it will keep being 12.220, including when calling it's toString method.