Construct a locale from language, country and variant.
This constructor normalizes the language value to lowercase and
the country value to uppercase.
<p>
<b>Note:</b>
<ul>
<li>ISO 639 is not a stable standard; some of the language codes it defines
(specifically "iw", "ji", and "in") have changed. This constructor accepts both the
old codes ("iw", "ji", and "in") and the new codes ("he", "yi", and "id"), but all other
API on Locale will return only the OLD codes.
<li>For backward compatibility reasons, this constructor does not make
any syntactic checks on the input.
<li>The two cases ("ja", "JP", "JP") and ("th", "TH", "TH") are handled specially,
see <a href="#special_cases_constructor">Special Cases</a> for more information.
</ul>
@param language An ISO 639 alpha-2 or alpha-3 language code, or a language subtag
up to 8 characters in length. See the <code>Locale</code> class description about
valid language values.
@param country An ISO 3166 alpha-2 country code or a UN M.49 numeric-3 area code.
See the <code>Locale</code> class description about valid country values.
@param variant Any arbitrary value used to indicate a variation of a <code>Locale</code>.
See the <code>Locale</code> class description for the details.
@exception NullPointerException thrown if any argument is null.
Construct a locale from language, country and variant. This constructor normalizes the language value to lowercase and the country value to uppercase. <p> <b>Note:</b> <ul> <li>ISO 639 is not a stable standard; some of the language codes it defines (specifically "iw", "ji", and "in") have changed. This constructor accepts both the old codes ("iw", "ji", and "in") and the new codes ("he", "yi", and "id"), but all other API on Locale will return only the OLD codes. <li>For backward compatibility reasons, this constructor does not make any syntactic checks on the input. <li>The two cases ("ja", "JP", "JP") and ("th", "TH", "TH") are handled specially, see <a href="#special_cases_constructor">Special Cases</a> for more information. </ul>
@param language An ISO 639 alpha-2 or alpha-3 language code, or a language subtag up to 8 characters in length. See the <code>Locale</code> class description about valid language values. @param country An ISO 3166 alpha-2 country code or a UN M.49 numeric-3 area code. See the <code>Locale</code> class description about valid country values. @param variant Any arbitrary value used to indicate a variation of a <code>Locale</code>. See the <code>Locale</code> class description for the details. @exception NullPointerException thrown if any argument is null.