根据属性文件中的唯一值查找键名

时间:2016-08-29 14:15:23

标签: java properties

我有一个包含以下键值的属性文件。请注意,这里的值也是唯一的。

ID1=SOMEIDVALUE1

ID2=SOMEIDVALUE2

ID3=SOMEIDVALUE3

ID4=SOMEIDVALUE4

在某些情况下,我需要根据SOMEIDVALUE(value)从属性文件中获取密钥名称。

可能的解决方案:

a)使用反向映射创建一个新属性

b)在地图中加载所有数据(键值)并创建一个新的逆映射。

请建议上述情况是否存在任何其他最佳解决方案。

注意:我不想将映射存储在DB中,否则SQL查询可以解决这个问题。

1 个答案:

答案 0 :(得分:0)

由于您有独特的组合,因此双向地图可能很有用。

你可以看看番石榴bimap

BiMap.inverse()返回一个视图,其中交换了键类型和值类型的位置。

BiMap<String, Integer> userId = HashBiMap.create();
String userForId = userId.inverse().get(id);