Java中的Locale
类具有getAvailableLocales方法,用于返回所有可用语言环境的列表。但是,我很好奇的是,语言环境不在该列表中意味着什么。例如,语言环境en-MY
在我的JVM上不可用,但是当我将其传递给接受语言环境的方法时,它们不会引发任何异常。
Locale enMY = new Locale.Builder()
.setLanguage("en")
.setRegion("MY")
.build();
String s = "test".toUpperCase(enMY); // returns TEST
Currency instance = Currency.getInstance(enMY); // returns currency code MYR
如果语言环境的存在无所谓,那么我们为什么要关心它是否可用?
使用Oracle JDK 1.8.0_172-b11。