Locale
The Locale class is instantiated to produce
objects that describe a geographical or cultural region. It is one of several
classes that provide you with the ability to write programs that can execute in
different international environments. For example, the formats used to display
dates, times, and numbers are different in various regions.
Internationalization
is a large topic that is beyond the scope of this book. However, many programs
will only need to deal with its basics, which include setting the current
locale.
The Locale class defines the following
constants that are useful for dealing with several common locales:
CANADA
CANADA_FRENCH
CHINA
CHINESE
ENGLISH
FRANCE
FRENCH
GERMAN
GERMANY
ITALIAN
ITALY
JAPAN
JAPANESE
KOREA
KOREAN
PRC
SIMPLIFIED_CHINESE
TAIWAN
TRADITIONAL_CHINESE
UK
US
For
example, the expression Locale.CANADA represents the Locale object for Canada. The
constructors for Locale are
Locale(String
language) Locale(String language, String country)
Locale(String
language, String country, String variant)
These
constructors build a Locale object
to represent a specific language and
in the case of the last two, country.
These values must contain standard language and country codes. Auxiliary
variant information can be provided in variant.
Locale defines several methods. One of the most
important is setDefault( ), shown
here: static void setDefault(Locale localeObj)
This
sets the default locale used by the JVM to that specified by localeObj. Some other interesting
methods are the following:
final
String getDisplayCountry( ) final String getDisplayLanguage( ) final String
getDisplayName( )
These
return human-readable strings that can be used to display the name of the
country, the name of the language, and the complete description of the locale.
The
default locale can be obtained using getDefault(
), shown here: static Locale getDefault( )
JDK 7
added significant upgrades to the Locale
class that support Internet Engineering Task Force (IETF) BCP 47, which defines
tags for identifying languages, and Unicode Technical Standard (UTS) 35, which
defines the Locale Data Markup Language (LDML). Support for BCP 47 and UTS 35
caused several features to be added to Locale,
including several new methods and the Locale.Builder
class. Among others, new methods include getScript(
), which obtains the locale’s script, and toLanguageTag( ), which obtains a string that contains the locale’s language tag. The Locale.Builder class constructs Locale instances. It ensures that a locale specification is
well-formed as defined by BCP 47. (The Locale
constructors do not provide such a check.) Several new methods have also been
added to Locale by JDK 8. Among
these are methods that support filtering, extensions, and lookups.
Calendar and
GregorianCalendar are examples of classes that operate in a
locale-sensitive manner. DateFormat
and SimpleDateFormat also depend on
the locale.
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2023 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.