public class DecimalFormatSymbols extends Object implements Cloneable, Serializable
This class represents the set of symbols (such as the decimal separator, the grouping separator, and so on) needed by DecimalFormat
to format numbers. DecimalFormat
creates for itself an instance of DecimalFormatSymbols
from its locale data. If you need to change any of these symbols, you can get the DecimalFormatSymbols
object from your DecimalFormat
and modify it.
Locale
, DecimalFormat
, Serialized Formpublic DecimalFormatSymbols()
Create a DecimalFormatSymbols object for the default FORMAT
locale. This constructor can only construct instances for the locales supported by the Java runtime environment, not for those supported by installed DecimalFormatSymbolsProvider
implementations. For full locale coverage, use the getInstance
method.
This is equivalent to calling DecimalFormatSymbols(Locale.getDefault(Locale.Category.FORMAT))
.
public DecimalFormatSymbols(Locale locale)
Create a DecimalFormatSymbols object for the given locale. This constructor can only construct instances for the locales supported by the Java runtime environment, not for those supported by installed DecimalFormatSymbolsProvider
implementations. For full locale coverage, use the getInstance
method. If the specified locale contains the Locale.UNICODE_LOCALE_EXTENSION
for the numbering system, the instance is initialized with the specified numbering system if the JRE implementation supports it. For example,
NumberFormat.getNumberInstance(Locale.forLanguageTag("th-TH-u-nu-thai"))This may return a
NumberFormat
instance with the Thai numbering system, instead of the Latin numbering system. locale
- the desired localeNullPointerException
- if locale
is nullpublic static Locale[] getAvailableLocales()
Returns an array of all locales for which the getInstance
methods of this class can return localized instances. The returned array represents the union of locales supported by the Java runtime and by installed DecimalFormatSymbolsProvider
implementations. It must contain at least a Locale
instance equal to Locale.US
.
DecimalFormatSymbols
instances are available.public static final DecimalFormatSymbols getInstance()
Gets the DecimalFormatSymbols
instance for the default locale. This method provides access to DecimalFormatSymbols
instances for locales supported by the Java runtime itself as well as for those supported by installed DecimalFormatSymbolsProvider
implementations.
This is equivalent to calling getInstance(Locale.getDefault(Locale.Category.FORMAT))
.
DecimalFormatSymbols
instance.Locale.getDefault(java.util.Locale.Category)
, Locale.Category.FORMAT
public static final DecimalFormatSymbols getInstance(Locale locale)
Gets the DecimalFormatSymbols
instance for the specified locale. This method provides access to DecimalFormatSymbols
instances for locales supported by the Java runtime itself as well as for those supported by installed DecimalFormatSymbolsProvider
implementations. If the specified locale contains the Locale.UNICODE_LOCALE_EXTENSION
for the numbering system, the instance is initialized with the specified numbering system if the JRE implementation supports it. For example,
NumberFormat.getNumberInstance(Locale.forLanguageTag("th-TH-u-nu-thai"))This may return a
NumberFormat
instance with the Thai numbering system, instead of the Latin numbering system. locale
- the desired locale.DecimalFormatSymbols
instance.NullPointerException
- if locale
is nullpublic char getZeroDigit()
Gets the character used for zero. Different for Arabic, etc.
public void setZeroDigit(char zeroDigit)
Sets the character used for zero. Different for Arabic, etc.
zeroDigit
- the character used for zeropublic char getGroupingSeparator()
Gets the character used for thousands separator. Different for French, etc.
public void setGroupingSeparator(char groupingSeparator)
Sets the character used for thousands separator. Different for French, etc.
groupingSeparator
- the grouping separatorpublic char getDecimalSeparator()
Gets the character used for decimal sign. Different for French, etc.
public void setDecimalSeparator(char decimalSeparator)
Sets the character used for decimal sign. Different for French, etc.
decimalSeparator
- the character used for decimal signpublic char getPerMill()
Gets the character used for per mille sign. Different for Arabic, etc.
public void setPerMill(char perMill)
Sets the character used for per mille sign. Different for Arabic, etc.
perMill
- the character used for per mille signpublic char getPercent()
Gets the character used for percent sign. Different for Arabic, etc.
public void setPercent(char percent)
Sets the character used for percent sign. Different for Arabic, etc.
percent
- the character used for percent signpublic char getDigit()
Gets the character used for a digit in a pattern.
public void setDigit(char digit)
Sets the character used for a digit in a pattern.
digit
- the character used for a digit in a patternpublic char getPatternSeparator()
Gets the character used to separate positive and negative subpatterns in a pattern.
public void setPatternSeparator(char patternSeparator)
Sets the character used to separate positive and negative subpatterns in a pattern.
patternSeparator
- the pattern separatorpublic String getInfinity()
Gets the string used to represent infinity. Almost always left unchanged.
public void setInfinity(String infinity)
Sets the string used to represent infinity. Almost always left unchanged.
infinity
- the string representing infinitypublic String getNaN()
Gets the string used to represent "not a number". Almost always left unchanged.
public void setNaN(String NaN)
Sets the string used to represent "not a number". Almost always left unchanged.
NaN
- the string representing "not a number"public char getMinusSign()
Gets the character used to represent minus sign. If no explicit negative format is specified, one is formed by prefixing minusSign to the positive format.
public void setMinusSign(char minusSign)
Sets the character used to represent minus sign. If no explicit negative format is specified, one is formed by prefixing minusSign to the positive format.
minusSign
- the character representing minus signpublic String getCurrencySymbol()
Returns the currency symbol for the currency of these DecimalFormatSymbols in their locale.
public void setCurrencySymbol(String currency)
Sets the currency symbol for the currency of these DecimalFormatSymbols in their locale.
currency
- the currency symbolpublic String getInternationalCurrencySymbol()
Returns the ISO 4217 currency code of the currency of these DecimalFormatSymbols.
public void setInternationalCurrencySymbol(String currencyCode)
Sets the ISO 4217 currency code of the currency of these DecimalFormatSymbols. If the currency code is valid (as defined by Currency.getInstance
), this also sets the currency attribute to the corresponding Currency instance and the currency symbol attribute to the currency's symbol in the DecimalFormatSymbols' locale. If the currency code is not valid, then the currency attribute is set to null and the currency symbol attribute is not modified.
currencyCode
- the currency codesetCurrency(java.util.Currency)
, setCurrencySymbol(java.lang.String)
public Currency getCurrency()
Gets the currency of these DecimalFormatSymbols. May be null if the currency symbol attribute was previously set to a value that's not a valid ISO 4217 currency code.
public void setCurrency(Currency currency)
Sets the currency of these DecimalFormatSymbols. This also sets the currency symbol attribute to the currency's symbol in the DecimalFormatSymbols' locale, and the international currency symbol attribute to the currency's ISO 4217 currency code.
currency
- the new currency to be usedNullPointerException
- if currency
is nullsetCurrencySymbol(java.lang.String)
, setInternationalCurrencySymbol(java.lang.String)
public char getMonetaryDecimalSeparator()
Returns the monetary decimal separator.
public void setMonetaryDecimalSeparator(char sep)
Sets the monetary decimal separator.
sep
- the monetary decimal separatorpublic String getExponentSeparator()
Returns the string used to separate the mantissa from the exponent. Examples: "x10^" for 1.23x10^4, "E" for 1.23E4.
setExponentSeparator(java.lang.String)
public void setExponentSeparator(String exp)
Sets the string used to separate the mantissa from the exponent. Examples: "x10^" for 1.23x10^4, "E" for 1.23E4.
exp
- the exponent separator stringNullPointerException
- if exp
is nullgetExponentSeparator()
public Object clone()
Standard override.
public boolean equals(Object obj)
Override equals.
equals
in class Object
obj
- the reference object with which to compare.true
if this object is the same as the obj argument; false
otherwise.Object.hashCode()
, HashMap
public int hashCode()
Override hashCode.
hashCode
in class Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.