|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.util.Currency
Represents a currency. Currencies are identified by their ISO 4217 currency codes. See the ISO 4217 maintenance agency for more information, including a table of currency codes.
The class is designed so that there's never more than one
Currency
instance for any given currency. Therefore, there's
no public constructor. You obtain a Currency
instance using
the getInstance
methods.
Field Summary | |
private static int |
A_TO_Z
|
private static int |
COUNTRY_TYPE_MASK
|
private static int |
COUNTRY_WITHOUT_CURRENCY_ENTRY
|
private String |
currencyCode
ISO 4217 currency code for this currency. |
private int |
defaultFractionDigits
Default fraction digits for this currency. |
private static HashMap |
instances
|
private static int |
INVALID_COUNTRY_ENTRY
|
(package private) static String |
mainTable
|
(package private) static String |
otherCurrencies
|
(package private) static int[] |
otherCurrenciesDFD
|
(package private) static long[] |
scCutOverTimes
|
(package private) static String[] |
scNewCurrencies
|
(package private) static int[] |
scNewCurrenciesDFD
|
(package private) static String[] |
scOldCurrencies
|
(package private) static int[] |
scOldCurrenciesDFD
|
private static int |
SIMPLE_CASE_COUNTRY_DEFAULT_DIGITS_MASK
|
private static int |
SIMPLE_CASE_COUNTRY_DEFAULT_DIGITS_SHIFT
|
private static int |
SIMPLE_CASE_COUNTRY_FINAL_CHAR_MASK
|
private static int |
SIMPLE_CASE_COUNTRY_MASK
|
private static int |
SPECIAL_CASE_COUNTRY_INDEX_DELTA
|
private static int |
SPECIAL_CASE_COUNTRY_INDEX_MASK
|
private static int |
SPECIAL_CASE_COUNTRY_MASK
|
Constructor Summary | |
private |
Currency(String currencyCode,
int defaultFractionDigits)
Constructs a Currency instance. |
Method Summary | |
String |
getCurrencyCode()
Gets the ISO 4217 currency code of this currency. |
int |
getDefaultFractionDigits()
Gets the default number of fraction digits used with this currency. |
static Currency |
getInstance(Locale locale)
Returns the Currency instance for the country of the
given locale. |
static Currency |
getInstance(String currencyCode)
Returns the Currency instance for the given currency code. |
private static Currency |
getInstance(String currencyCode,
int defaultFractionDigits)
|
private static int |
getMainTableEntry(char char1,
char char2)
Gets the main table entry for the country whose country code consists of char1 and char2. |
String |
getSymbol()
Gets the symbol of this currency for the default locale. |
String |
getSymbol(Locale locale)
Gets the symbol of this currency for the specified locale. |
private Object |
readResolve()
Resolves instances being deserialized to a single instance per currency. |
String |
toString()
Returns the ISO 4217 currency code of this currency. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
private String currencyCode
private transient int defaultFractionDigits
private static HashMap instances
static String mainTable
static long[] scCutOverTimes
static String[] scOldCurrencies
static String[] scNewCurrencies
static int[] scOldCurrenciesDFD
static int[] scNewCurrenciesDFD
static String otherCurrencies
static int[] otherCurrenciesDFD
private static final int A_TO_Z
private static final int INVALID_COUNTRY_ENTRY
private static final int COUNTRY_WITHOUT_CURRENCY_ENTRY
private static final int SIMPLE_CASE_COUNTRY_MASK
private static final int SIMPLE_CASE_COUNTRY_FINAL_CHAR_MASK
private static final int SIMPLE_CASE_COUNTRY_DEFAULT_DIGITS_MASK
private static final int SIMPLE_CASE_COUNTRY_DEFAULT_DIGITS_SHIFT
private static final int SPECIAL_CASE_COUNTRY_MASK
private static final int SPECIAL_CASE_COUNTRY_INDEX_MASK
private static final int SPECIAL_CASE_COUNTRY_INDEX_DELTA
private static final int COUNTRY_TYPE_MASK
Constructor Detail |
private Currency(String currencyCode, int defaultFractionDigits)
Currency
instance. The constructor is private
so that we can insure that there's never more than one instance for a
given currency.
Method Detail |
public static Currency getInstance(String currencyCode)
Currency
instance for the given currency code.
currencyCode
- the ISO 4217 code of the currency
Currency
instance for the given currency code
NullPointerException
- if currencyCode
is null
IllegalArgumentException
- if currencyCode
is not
a supported ISO 4217 code.private static Currency getInstance(String currencyCode, int defaultFractionDigits)
public static Currency getInstance(Locale locale)
Currency
instance for the country of the
given locale. The language and variant components of the locale
are ignored. The result may vary over time, as countries change their
currencies. For example, for the original member countries of the
European Monetary Union, the method returns the old national currencies
until December 31, 2001, and the Euro from January 1, 2002, local time
of the respective countries.
The method returns null
for territories that don't
have a currency, such as Antarctica.
locale
- the locale for whose country a Currency
instance is needed
Currency
instance for the country of the given
locale, or null
NullPointerException
- if locale
or its country
code is null
IllegalArgumentException
- if the country of the given locale
is not a supported ISO 3166 country code.public String getCurrencyCode()
public String getSymbol()
public String getSymbol(Locale locale)
locale
- the locale for which a display name for this currency is
needed
NullPointerException
- if locale
is nullpublic int getDefaultFractionDigits()
public String toString()
toString
in class Object
private Object readResolve()
private static int getMainTableEntry(char char1, char char2)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |