GNU Classpath (0.95) | |
Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Object
java.util.Locale
Locales are made up of a language code, a country code, and an optional set of variant strings. Language codes are represented by ISO 639:1988 w/ additions from ISO 639/RA Newsletter No. 1/1989 and a decision of the Advisory Committee of ISO/TC39 on August 8, 1997.
Country codes are represented by ISO 3166. Variant strings are vendor and browser specific. Standard variant strings include "POSIX" for POSIX, "WIN" for MS-Windows, and "MAC" for Macintosh. When there is more than one variant string, they must be separated by an underscore (U+005F).
The default locale is determined by the values of the system properties user.language, user.country (or user.region), and user.variant, defaulting to "en_US". Note that the locale does NOT contain the conversion and formatting capabilities (for that, use ResourceBundle and java.text). Rather, it is an immutable tag object for identifying a given locale, which is referenced by these other classes when they must make locale-dependent decisions.
ResourceBundle
, Format
, NumberFormat
, Collator
, Serialized FormField Summary | |
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
static Locale |
|
Constructor Summary | |
Method Summary | |
Object |
|
boolean | |
static Locale[] |
|
String |
|
static Locale |
|
String |
|
String |
|
String |
|
String |
|
String |
|
String |
|
String |
|
String |
|
String |
|
String |
|
static String[] |
|
static String[] |
|
String |
|
String |
|
int |
|
static void |
|
String |
|
Methods inherited from class java.lang.Object | |
clone , equals , extends Object> getClass , finalize , hashCode , notify , notifyAll , toString , wait , wait , wait |
public static final Locale CANADA
Locale which represents the English speaking portion of Canada.
public static final Locale CANADA_FRENCH
Locale which represents the French speaking portion of Canada.
public static final Locale CHINA
Locale which represents China. Same as SIMPLIFIED_CHINESE Locale.
public static final Locale PRC
Locale which represents the People's Republic of China. Same as CHINA Locale.
public static final Locale ROOT
The root locale, used as the base case in lookups by locale-sensitive operations.
public static final Locale SIMPLIFIED_CHINESE
Locale which represents the Chinese language as used in China.
public static final Locale TAIWAN
Locale which represents Taiwan. Same as TRADITIONAL_CHINESE Locale.
public static final Locale TRADITIONAL_CHINESE
Locale which represents the Chinese language as used in Taiwan. Same as TAIWAN Locale.
public Locale(String language)
Creates a new locale for a language.
- Parameters:
language
- lowercase two-letter ISO-639 A2 language code
- Throws:
NullPointerException
- if either argument is null
- Since:
- 1.4
public Locale(String language, String country)
Creates a new locale for the given language and country.
- Parameters:
language
- lowercase two-letter ISO-639 A2 language codecountry
- uppercase two-letter ISO-3166 A2 country code
- Throws:
NullPointerException
- if either argument is null
public Locale(String language, String country, String variant)
Creates a new locale for the given language and country.
- Parameters:
language
- lowercase two-letter ISO-639 A2 language codecountry
- uppercase two-letter ISO-3166 A2 contry codevariant
- vendor and browser specific
- Throws:
NullPointerException
- if any argument is null
public Object clone()
Does the same asObject.clone()
but does not throw aCloneNotSupportedException
. Why anyone would use this method is a secret to me, since this class is immutable.
- Returns:
- the clone
public boolean equals(Object obj)
Compares two locales. To be equal, obj must be a Locale with the same language, country, and variant code.
- Parameters:
obj
- the other locale
- Returns:
- true if obj is equal to this
public static Locale[] getAvailableLocales()
Returns the list of available locales.
- Returns:
- the installed locales
public String getCountry()
Returns the country code of this locale.
- Returns:
- country code portion of this locale, or an empty String
public static Locale getDefault()
Returns the default Locale. The default locale is generally once set on start up and then never changed. Normally you should use this locale for everywhere you need a locale. The initial setting matches the default locale, the user has chosen.
- Returns:
- the default locale for this virtual machine
public String getDisplayCountry()
Returns the country name of this locale localized to the default locale. If the localized is not found, the ISO code is returned. This has the same effect asgetDisplayCountry(Locale.getDefault());
- Returns:
- the country name of this locale localized to the given locale, with the ISO code as backup
public String getDisplayCountry(Locale inLocale)
Gets the name of the country specified by this locale, in a form suitable for display to the user. If possible, the display name will be localized to the specified locale. For example, if the locale instance isLocale.GERMANY
, and the specified locale isLocale.UK
, the result would be 'Germany'. Using the German locale would instead give 'Deutschland'. If the display name can not be localized to the supplied locale, it will fall back on other output in the following order:
- the display name in the default locale
- the display name in English
- the ISO code
If the country is unspecified by this locale, then the empty string is returned.
- Parameters:
inLocale
- the locale to use for formatting the display string.
- Returns:
- the country name of this locale localized to the given locale, with the default locale, English and the ISO code as backups.
- Throws:
NullPointerException
- if the supplied locale is null.
public String getDisplayLanguage()
Gets the country name suitable for display to the user, formatted for the default locale. This has the same effect asgetDisplayLanguage(Locale.getDefault());
- Returns:
- the language name of this locale localized to the default locale, with the ISO code as backup
public String getDisplayLanguage(Locale inLocale)
Gets the name of the language specified by this locale, in a form suitable for display to the user. If possible, the display name will be localized to the specified locale. For example, if the locale instance isLocale.GERMANY
, and the specified locale isLocale.UK
, the result would be 'German'. Using the German locale would instead give 'Deutsch'. If the display name can not be localized to the supplied locale, it will fall back on other output in the following order:
- the display name in the default locale
- the display name in English
- the ISO code
If the language is unspecified by this locale, then the empty string is returned.
- Parameters:
inLocale
- the locale to use for formatting the display string.
- Returns:
- the language name of this locale localized to the given locale, with the default locale, English and the ISO code as backups.
- Throws:
NullPointerException
- if the supplied locale is null.
public String getDisplayName()
Gets all local components suitable for display to the user, formatted for the default locale. For the language component, getDisplayLanguage is called. For the country component, getDisplayCountry is called. For the variant set component, getDisplayVariant is called.The returned String will be one of the following forms:
language (country, variant) language (country) language (variant) country (variant) language country variant
- Returns:
- String version of this locale, suitable for display to the user
public String getDisplayName(Locale locale)
Gets all local components suitable for display to the user, formatted for a specified locale. For the language component, getDisplayLanguage(Locale) is called. For the country component, getDisplayCountry(Locale) is called. For the variant set component, getDisplayVariant(Locale) is called.The returned String will be one of the following forms:
language (country, variant) language (country) language (variant) country (variant) language country variant
- Parameters:
locale
- locale to use for formatting
- Returns:
- String version of this locale, suitable for display to the user
public String getDisplayVariant()
Returns the variant name of this locale localized to the default locale. If the localized is not found, the variant code itself is returned. This has the same effect asgetDisplayVariant(Locale.getDefault());
- Returns:
- the variant code of this locale localized to the given locale, with the ISO code as backup
public String getDisplayVariant(Locale inLocale)
Gets the name of the variant specified by this locale, in a form suitable for display to the user. If possible, the display name will be localized to the specified locale. For example, if the locale instance is a revised variant, and the specified locale isLocale.UK
, the result would be 'REVISED'. Using the German locale would instead give 'Revidiert'. If the display name can not be localized to the supplied locale, it will fall back on other output in the following order:
- the display name in the default locale
- the display name in English
- the ISO code
If the variant is unspecified by this locale, then the empty string is returned.
- Parameters:
inLocale
- the locale to use for formatting the display string.
- Returns:
- the variant name of this locale localized to the given locale, with the default locale, English and the ISO code as backups.
- Throws:
NullPointerException
- if the supplied locale is null.
public String getISO3Country()
Returns the three-letter ISO country abbrevation of the locale.
- Throws:
MissingResourceException
- if the three-letter code is not known
public String getISO3Language()
Returns the three-letter ISO language abbrevation of this locale.
- Throws:
MissingResourceException
- if the three-letter code is not known
public static String[] getISOCountries()
Returns a list of all 2-letter uppercase country codes as defined in ISO 3166.
- Returns:
- a list of acceptable country codes
public static String[] getISOLanguages()
Returns a list of all 2-letter lowercase language codes as defined in ISO 639 (both old and new variant).
- Returns:
- a list of acceptable language codes
public String getLanguage()
Returns the language code of this locale. Some language codes have changed as ISO 639 has evolved; this returns the old name, even if you built the locale with the new one.
- Returns:
- language code portion of this locale, or an empty String
public String getVariant()
Returns the variant code of this locale.
- Returns:
- the variant code portion of this locale, or an empty String
public int hashCode()
Return the hash code for this locale. The hashcode is the logical xor of the hash codes of the language, the country and the variant. The hash code is precomputed, sinceLocale
s are often used in hash tables.
- Returns:
- the hashcode
public static void setDefault(Locale newLocale)
Changes the default locale. Normally only called on program start up. Note that this doesn't change the locale for other programs. This has a security check,PropertyPermission("user.language", "write")
, because of its potential impact to running code.
- Parameters:
newLocale
- the new default locale
- Throws:
NullPointerException
- if newLocale is nullSecurityException
- if permission is denied
public String toString()
Gets the string representation of the current locale. This consists of the language, the country, and the variant, separated by an underscore. The variant is listed only if there is a language or country. Examples: "en", "de_DE", "_GB", "en_US_WIN", "de__POSIX", "fr__MAC".
- Returns:
- the string representation of this Locale
- See Also:
getDisplayName()
GNU Classpath (0.95) |