我想用Java创建一个集合,并希望使用多个不同的密钥来查找它。例如,我有一个国家级
public class Country{
String countryCode;
String countryName;
String currency;
Integer population;
//getters, setters, equals, hashcode
}
现在对于上述类,假设如下:
我的要求是:
getCountryByCode()
,getCountryByName()
和getCountryByCurrency
所有有O(1)。<countrycode, country>
其他一起<countryname, country>
?我试着查找google guava,apache commons和java stream,但无法找到一个好的解决方案。
发布于 2018-10-24 08:57:06
只要确保两个映射包含相同的实例,就有两个HashMaps没有真正的危害Country
因此,创建一个名为的类,CountryRepository
并将这两个映射作为私有final。
在该类上实现需要的方法。填写CountryRepository构造函数中的两个映射。
https://stackoverflow.com/questions/-100002971
复制相似问题