我有这个功能

private static string countryToLanguage(String countryCode){

  if (countryCode.equal("AD")) {return "ca"}
  else if (countryCode.equal("AE")) {return "ar"}
  else if (countryCode.equal("AG")) {return "en"}
  ...

}


他们有更有效的方法吗?因为它是一个静态函数,所以我不能使用任何类型的全局变量(例如hashmap)

最佳答案

因为它是一个静态函数,所以我不能使用任何类型的全局变量(例如hashmap)


你当然可以。

private static final HashMap<String, String> LANGUAGES = new HashMap<>();

static {
  LANGUAGES.put("AD", "ca");
  // TODO: rest of mappings go here
}

private static String countryToLanguage(String countryCode){
  return LANGUAGES.get(countryCode);
}

10-07 16:16