📅  最后修改于: 2020-10-13 06:55:58             🧑  作者: Mango
国际化也缩写为I18N,因为第一个字母“ I”和最后一个字母“ N”之间总共有18个字符。
国际化是一种创建可以适应不同语言和地区的应用程序的机制。
如果您要开发应用程序并希望根据特定地区或语言显示消息,货币,日期,时间等,则国际化是Java的强大概念之一。
本地化也缩写为I10N,因为第一个字母“ L”和最后一个字母“ N”之间总共有10个字符。本地化是一种通过添加特定于语言环境的文本和组件来创建可适应特定语言和区域的应用程序的机制。
开始国际化之前,让我们首先了解一个地区与另一个地区之间有哪些不同的信息。有文化相关数据的列表:
语言环境类别的对象表示地理或文化区域。此对象可用于获取特定于语言环境的信息,例如国家/地区名称,语言,变体等。
有Locale类的字段:
Locale类的三个构造函数如下:
提供了Locale类的常用方法。
在此示例中,我们将显示默认语言环境的信息。如果要获取有关任何特定语言环境的信息,请在main方法中注释第一行语句,并取消注释第二行语句。
import java.util.*;
public class LocaleExample {
public static void main(String[] args) {
Locale locale=Locale.getDefault();
//Locale locale=new Locale("fr","fr");//for the specific locale
System.out.println(locale.getDisplayCountry());
System.out.println(locale.getDisplayLanguage());
System.out.println(locale.getDisplayName());
System.out.println(locale.getISO3Country());
System.out.println(locale.getISO3Language());
System.out.println(locale.getLanguage());
System.out.println(locale.getCountry());
}
}
Output:United States
English
English (United States)
USA
eng
en
US
在此示例中,我们以不同的语言显示英语。让我们看看英语是如何用法语和西班牙语写的。
import java.util.*;
public class LocaleExample2 {
public static void main(String[] args) {
Locale enLocale = new Locale("en", "US");
Locale frLocale = new Locale("fr", "FR");
Locale esLocale = new Locale("es", "ES");
System.out.println("English language name (default): " +
enLocale.getDisplayLanguage());
System.out.println("English language name in French: " +
enLocale.getDisplayLanguage(frLocale));
System.out.println("English language name in spanish: " +
enLocale.getDisplayLanguage(esLocale));
}
}
在此示例中,我们将显示许多语言环境的显示区域。
import java.util.*;
public class LocaleEx {
public static void main(String[] args) {
Locale[] locales = { new Locale("en", "US"),
new Locale("es", "ES"), new Locale("it", "IT") };
for (int i=0; i< locales.length; i++) {
String displayLanguage = locales[i].getDisplayLanguage(locales[i]);
System.out.println(locales[i].toString() + ": " + displayLanguage);
}
}
}
Output:en_US: English
es_ES: espa?ol
it_IT: italiano