This is the concrete Format class used by NumberFormat for all locales that use base 10 numbers. Most applications do not need to use this class directly--they can use the static methods of NumberFormat to obtain a default NumberFormat object for a desired locale, and may then perform minor locale-independent customizations on that object.
Applications that require highly-customized number formatting and parsing may create custom DecimalFormat objects by passing a suitable pattern to the DecimalFormat() constructor method. The applyPattern() method can be used to change this pattern. A pattern consists of a string of characters from the following table. For example: "$#,##0.00;($#,##0.00)".
| Character | Meaning |
|---|---|
| # | A digit; zeros show as absent |
| 0 | A digit; zeros show as 0 |
| . | The locale-specific decimal separator |
| , | The locale-specific grouping separator |
| - | The locale-specific negative prefix |
| % | Show value as a percentage |
| ; |
Separates positive number format (on left) from optional negative number format (on right) |
| ' |
Quote a reserved character, so it appears literally in the output |
| other | Appears literally in output |
A DecimalFormatSymbols object may be optionally specified when creating a DecimalFormat object. If one is not specified, a DecimalFormatSymbols object suitable for the default locale is used.
public class DecimalFormat extends NumberFormat {
// Public Constructors
public DecimalFormat();
public DecimalFormat(String pattern);
public DecimalFormat(String pattern, DecimalFormatSymbols symbols);
// Public Instance Methods
public void applyLocalizedPattern(String pattern);
public void applyPattern(String pattern);
public Object clone(); // Overrides NumberFormat
public boolean equals(Object obj); // Overrides NumberFormat
public StringBuffer format(double number, StringBuffer result, FieldPosition fieldPosition); // Defines NumberFormat
public StringBuffer format(long number, StringBuffer result, FieldPosition fieldPosition); // Defines NumberFormat
public DecimalFormatSymbols getDecimalFormatSymbols();
public int getGroupingSize();
public int getMultiplier();
public String getNegativePrefix();
public String getNegativeSuffix();
public String getPositivePrefix();
public String getPositiveSuffix();
public int hashCode(); // Overrides NumberFormat
public boolean isDecimalSeparatorAlwaysShown();
public Number parse(String text, ParsePosition status); // Defines NumberFormat
public void setDecimalFormatSymbols(DecimalFormatSymbols newSymbols);
public void setDecimalSeparatorAlwaysShown(boolean newValue);
public void setGroupingSize(int newValue);
public void setMultiplier(int newValue);
public void setNegativePrefix(String newValue);
public void setNegativeSuffix(String newValue);
public void setPositivePrefix(String newValue);
public void setPositiveSuffix(String newValue);
public String toLocalizedPattern();
public String toPattern();
}
Object->Format(Serializable, Cloneable)->NumberFormat(Cloneable)->DecimalFormat