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();
}
What method that I need to use in order to return String val? I used Multimap because I have multiple key. As for now my output would return all key. But I need only String val(passing variable).
"ctScanSite": "{01=[073, 086, 101], 04=[085], 05=[112], 07=[069], ...}"
Thank you
my expected output should return single key:
"ctScanSite": "01",
You can use invertFrom
of Multimaps
and invert your map, then get the keys from the input value using the invertedMap. Refer below:
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);
}