You can use the
java.text.DecimalFormat
class to control the display of leading and trailing zeros, prefixes and suffixes, grouping (thousands) separators, and the decimal separator. DecimalFormat
offers a great deal of flexibility in the formatting of numbers, but it can make your code more complex.
The example that follows creates a
DecimalFormat
object, myFormatter
, by passing a pattern string to the DecimalFormat
constructor. The format()
method, which DecimalFormat
inherits from NumberFormat
, is then invoked by myFormatter
—it accepts a double
value as an argument and returns the formatted number in a string:
Here is a sample program that illustrates the use of
DecimalFormat
:import java.text.*; public class DecimalFormatDemo { static public void customFormat(String pattern, double value ) { DecimalFormat myFormatter = new DecimalFormat(pattern); String output = myFormatter.format(value); System.out.println(value + " ===> " + pattern + " ===> " + output);
} static public void main(String[] args) { customFormat("###,###.###", 123456.789); customFormat("###.##", 123456.789); customFormat("000000.000", 123.78); customFormat("$###,###.###", 12345.67); } }
The output is:
123456.789 ===> ###,###.### ===> 123,456.789 123456.789 ===> ###.## ===> 123456.79 123.78 ===> 000000.000 ===> 000123.780 12345.67 ===> $###,###.### ===> $12,345.67
Reference:
No comments :
Post a Comment