我想将所有ISO国家/地区代码(作为Locale.getISOCountries()
的输出)作为CountryCode
的集合,其编写方式如下:
public class CountryCodes {
public static final CountryCode GLOBAL = CountryCode.of("GL");
public static final PCollection<String> ALL =
OrderedPSet.from(Arrays.asList(Locale.getISOCountries()));
}
这可行,我在
ALL
中有国家代码列表,但是我希望ALL
像CountryCode
一样是GLOBAL
,而不是String
。实现这一目标的最佳方法是什么? 最佳答案
尝试
OrderedPSet.from(
Arrays.asList(Locale.getISOContries())
.stream()
.map(CountryCode::of)
.collect(Collectors.toList())
)
我没有尝试过代码,但是主要的想法是,应该使用将
List
转换为Arrays.asList
的函数,使使用列表中的每个项目使用map
和String
构建的CountryCode
。该功能是CountryCode::of
。关于java - 如何收集Locale.getISOCountries(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47098984/