Java 如何从货币代码中获取国家/地区代码/名称
鉴于我有一个货币代码,我如何获得货币适用的国家代码/名称?我知道货币和国家之间可能存在1:n映射,在这种情况下,如何获取货币适用的所有国家?为了获取货币的所有国家,您可以在Java中对MultiMap对象进行简单搜索。通过运行for在地图中搜索(假设第一个字符串是currency,第二个字符串是country)和if来检查货币是否是您要查找的货币。如果这是真的,您可以将找到的所有国家/地区添加到一个数组中,然后进一步使用它们。Java 如何从货币代码中获取国家/地区代码/名称,java,android,Java,Android,鉴于我有一个货币代码,我如何获得货币适用的国家代码/名称?我知道货币和国家之间可能存在1:n映射,在这种情况下,如何获取货币适用的所有国家?为了获取货币的所有国家,您可以在Java中对MultiMap对象进行简单搜索。通过运行for在地图中搜索(假设第一个字符串是currency,第二个字符串是country)和if来检查货币是否是您要查找的货币。如果这是真的,您可以将找到的所有国家/地区添加到一个数组中,然后进一步使用它们。CurrencyCode库中的类具有getCountryList()方
CurrencyCode
库中的类具有getCountryList()
方法,该方法返回使用货币的国家/地区列表。下面是一个示例命令行应用程序
import java.util.List;
导入com.neovisionaries.i18n.CountryCode;
导入com.neovisionaries.i18n.CurrencyCode;
公共类CurrencyToCountryList
{
公共静态void main(字符串[]args)
{
//对于每种货币代码,如欧元和美元。
for(字符串代码:args)
{
//获取CurrencyCode实例。
货币代码货币=
CurrencyCode.getByCode(代码);
如果(货币==null)
{
//代码无效。
System.out.format(“%s”无效。\n”,代码);
继续;
}
System.out.format(“%s(%s)”由:\n使用,
currency,currency.getName());
//获取使用该货币的国家/地区的列表。
国家代码列表=
currency.getCountryList();
//为每个国家。
用于(国家代码国家:国家代码列表)
{
//打印国家代码和国家名称。
System.out.format(“\t%s:%s\n”,
country,country.getName());
}
}
}
}
如果您这样运行此应用程序:
$ java -cp nv-i18n-1.15.jar:. CurrencyToCountryList USD
您将获得如下所示的结果:
USD (US Dollar) is used by:
AS: American Samoa
BQ: Bonaire, Sint Eustatius and Saba
EC: Ecuador
FM: Micronesia, Federated States of
GU: Guam
HT: Haiti
IO: British Indian Ocean Territory
MH: Marshall Islands
MP: Northern Mariana Islands
PA: Panama
PR: Puerto Rico
PW: Palau
SV: El Salvador
TC: Turks and Caicos Islands
TL: Timor-Leste
UM: United States Minor Outlying Islands
US: United States
VG: Virgin Islands, British
VI: Virgin Islands, U.S.
您可以将货币/国家组合存储在数据库表中。当财务状况发生变化时,您需要更新表。我不想自己维护映射。这里不是有一些API吗?尝试做同样的事情。有货币代码。要将其与旗帜图标匹配。