示例
类别
全球化: 语言环境处理

Name
避免使用语言环境名称作为字符串文字量

说明
Java 中的语言环境名称并不固定,而且将来可能还会更改。 但是,每一个语言环境都由唯一的可向后兼容的语言环境对象进行表示。使用语言环境对象代替使用语言环境名称的字符串。

解决方案
使用语言环境对象作为区分语言环境的方法内的参数。

public static final String CHINESE_LOCALE_STRING = "CHINESE"; //$NON-NLS-1$

private static void processEnglishString(String str) {
// process string in US locale
}

private static void processChineseString(String str) {
// process string in CHINESE locale
}
public static void processString(String str, Locale locale){
if (Locale.CHINA.equals(locale)){
processChineseString(str);
}else {
processEnglishString(str);
}
}


public static void main(String[] args) {
String str = "\u4e1c\u897f\u5357\u5317\u4e2d";//$NON-NLS-1$
if ( CHINESE_LOCALE_STRING.equals( args[0] ) ){
processString( str, Locale.CHINA );
}else {
processString( str, Locale.US );
}
}