Return MutilMap 中单键的方法

Return method for single key in MutilMap

public static String getCTScanSite(String val) {
    Multimap<String, String> map = HashMultimap.create();

    map.put("07", "069");
    map.put("01", "073");
    map.put("04", "085");
    map.put("01", "086");
    map.put("96", "099");
    map.put("112", "100");
    map.put("01", "101");
    map.put("109", "102");
    map.put("106", "103");
    map.put("119", "104");

    return map.toString();
}

为了 return String val,我需要使用什么方法?我使用 Multimap 因为我有多个键。至于现在我的输出将 return 所有关键。但我只需要 String val(passing variable).

"ctScanSite": "{01=[073, 086, 101], 04=[085], 05=[112], 07=[069], ...}"

谢谢

我的预期输出应该return单键:

 "ctScanSite": "01", 

您可以使用 invertFromMultimaps 并反转您的地图,然后使用 invertedMap 从输入值中获取键。参考如下:

public static String getCTScanSite(String val) {
    Multimap<String, String> map = HashMultimap.create();

    map.put("07", "069");
    map.put("01", "073");
    map.put("04", "085");
    map.put("01", "086");
    map.put("96", "099");
    map.put("112", "100");
    map.put("01", "101");
    map.put("109", "102");
    map.put("106", "103");
    map.put("119", "104");
    Multimap<String, String> invertedMap = Multimaps.invertFrom(map, ArrayListMultimap.<String, String>create());
    return invertedMap.get(val);
}