我有一个包含以下键值的属性文件。请注意,这里的值也是唯一的。
ID1=SOMEIDVALUE1
ID2=SOMEIDVALUE2
ID3=SOMEIDVALUE3
ID4=SOMEIDVALUE4
在某些情况下,我需要根据SOMEIDVALUE(value)从属性文件中获取密钥名称。
可能的解决方案:
a)使用反向映射创建一个新属性
b)在地图中加载所有数据(键值)并创建一个新的逆映射。
请建议上述情况是否存在任何其他最佳解决方案。
注意:我不想将映射存储在DB中,否则SQL查询可以解决这个问题。
答案 0 :(得分:0)
由于您有独特的组合,因此双向地图可能很有用。
你可以看看番石榴bimap
BiMap.inverse()返回一个视图,其中交换了键类型和值类型的位置。
BiMap<String, Integer> userId = HashBiMap.create();
String userForId = userId.inverse().get(id);